-
ALLGEMEINER STAND DER TECHNIK
-
Ein Reinigen des Fahrzeugäußeren kann auf eine Vielzahl von Weisen erfolgen. Benutzer des Fahrzeugs können das Fahrzeug zuhause von Hand waschen oder das Fahrzeug bei einer sogenannten Selbstwaschanlage maschinell waschen. Stattdessen kann das Fahrzeug durch eine sogenannte automatische Autowaschanlage gefahren werden. Zum Beispiel wird bei der automatischen Autowaschanlage eine Maschine, die eine Düse aufweist, nahe dem Fahrzeug angeordnet; danach kann ein Gemisch aus Seife und Wasser auf die Fahrzeugaußenseite aufgetragen werden und eine Reihe von Bürsten an der Maschine kann Schmutz und Ablagerungen entfernen. Die Maschine kann das Fahrzeug ferner klarspülen und trockenblasen.
-
Figurenliste
-
- 1 ist eine schematische Ansicht eines autonomen Fahrsystems für ein Fahrzeug, das ein Sensorreinigungssystem beinhaltet.
- 2 ist eine perspektivische Ansicht eines beispielhaften Sensors, der unter Verwendung des Sensorreinigungssystems gereinigt werden kann.
- 3 ist eine beispielhafte schematische Ansicht des Sensorreinigungssystems, das einen Computer beinhaltet, der mit einer Vielzahl von Pumpen und Sensoren gekoppelt ist.
- 4 ist eine schematische Ansicht eines Fluidbereitstellungssystems in dem Fahrzeug, das unter Verwendung des Computers des Sensorreinigungssystems gesteuert werden kann.
- 5 ist ein Ablaufdiagramm mit Veranschaulichung eines beispielhaften Prozesses der Verwendung des Sensorreinigungssystems.
- 6 ist eine Seitenansicht eines anderen beispielhaften Sensors, der unter Verwendung des Sensorreinigungssystems gereinigt werden kann.
-
DETAILLIERTE BESCHREIBUNG
-
Gemäß einem veranschaulichenden Beispiel ist ein autonomes Fahrsystem beschrieben, das ein Sensorreinigungssystem für einen oder mehrere Fahrzeugsensoren beinhaltet. In einem Beispiel beinhaltet das Sensorreinigungssystem einen Computer, der für Folgendes programmiert ist: Schmutz auf einem Sensor eines Fahrzeugs zu bestimmen, ein Nichtvorhandensein einer bestehenden Ausführung einer Kollisionsvermeidungsanweisung zu bestimmen, und basierend auf den Bestimmungen, ein Fluid auf den Sensor aufzutragen.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist der Computer ferner dazu programmiert, das Fluid auf ein Fenster des Sensors aufzutragen, wobei das Fenster eine Abdeckung, eine Linse oder eine Kombination davon umfasst.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist der Sensor eine Kamera oder Light-Detection-and-Ranging-(LIDAR-)Vorrichtung, die einem System für autonomes Fahren in dem Fahrzeug Bildgebungsdaten bereitstellt.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist das Fluid eines von einem Gas oder einer Flüssigkeit.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist der Computer ferner dazu programmiert, das Fluid während eines vorbestimmten Zeitintervalls, das mit dem bestimmten Nichtvorhandensein assoziiert ist, aufzutragen.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist das vorbestimmte Zeitintervall kürzer als drei Sekunden.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist der Computer ferner dazu programmiert, ein erstes Fluid basierend auf der Bestimmung des Schmutzes auf den Sensor aufzutragen, wobei, wenn das erste Fluid den Schmutz nicht entfernt, der Computer ferner dazu programmiert ist, ein zweites Fluid basierend auf der Bestimmung des Schmutzes auf dem Sensor und basierend auf dem bestimmten Nichtvorhandensein auf den Sensor aufzutragen. Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist das erste Fluid Druckluft, wobei das zweite Fluid eine Reinigungslösung ist.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist der Computer ferner für Folgendes programmiert: zweiten Schmutz auf einem zweiten Sensor zu bestimmen; und zu bestimmen, das Fluid nacheinander basierend auf dem Bestimmen, dass der erste und zweite Sensor innerhalb einer gemeinsamen Zone des Fahrzeugs liegen, auf den ersten und zweiten Sensor aufzutragen.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist der Computer ferner für Folgendes programmiert: zu bestimmen, dass eine Kollisionsvermeidungsanweisung nicht innerhalb eines vorbestimmten Zeitintervalls initiiert wird; und basierend auf dieser Bestimmung und der Bestimmung des Schmutzes, dann das Fluid während des Intervalls auf den Sensor aufzutragen.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist der Computer ferner für Folgendes programmiert: zu bestimmen, dass ein Regenratenparameter kleiner als oder gleich einem Schwellenwert ist; und basierend auf dieser Bestimmung, zu bestimmen, ein erstes Fluid auf den Sensor aufzutragen.
-
Gemäß dem zumindest einen vorstehend dargelegten Beispiel ist der Computer ferner für Folgendes programmiert: zu bestimmen, ob der Schmutz entfernt wurde; und wenn er nicht entfernt wurde, dann zu bestimmen, ein zweites Fluid auf den Sensor aufzutragen.
-
Ein System kann Folgendes beinhalten: den Computer gemäß dem zumindest einen vorstehend dargelegten Beispiel; und zumindest eine Pumpe, wobei der Computer ferner dazu programmiert ist, die zumindest eine Pumpe zu steuern, um das Fluid an den Sensor bereitzustellen.
-
Gemäß dem zumindest einen vorstehend dargelegten Systembeispiel kann das System beinhalten, dass die zumindest eine Pumpe eine Vielzahl von Anschlüssen aufweist, wobei der Computer ferner dazu programmiert ist, wahlweise die Vielzahl von Anschlüssen zu betätigen, um Bereitstellung des Fluids an eine Vielzahl von Sensoren zu steuern.
-
Gemäß dem zumindest einen vorstehend dargelegten Systembeispiel kann das System ferner zumindest einen, mit dem Computer gekoppelten Sensor beinhalten, der eine Angabe von Temperatur, Regenrate oder beiden bereitstellt.
-
Gemäß einem anderen veranschaulichenden Beispiel kann ein Verfahren Folgendes beinhalten: Bestimmen von Schmutz auf einem Sensor eines Fahrzeugs, Bestimmen eines Nichtvorhandenseins einer bestehenden Ausführung einer Kollisionsvermeidungsanweisung, und basierend auf den Bestimmungen, Auftragen eines Fluids auf den ersten Sensor.
-
Gemäß dem zumindest einen vorstehend dargelegten Verfahrensbeispiel ist der erste Sensor eine Kamera oder Light-Detection-and-Ranging-(LIDAR-)Vorrichtung, die einem System für autonomes Fahren in dem Fahrzeug Bildgebungsdaten bereitstellt.
-
Gemäß dem zumindest einen vorstehend dargelegten Verfahrensbeispiel kann das Verfahren ferner Folgendes beinhalten: Auftragen eines ersten Fluids auf den ersten Sensor basierend auf der Bestimmung des Schmutzes; Bestimmen, dass das erste Fluid den Schmutz nicht entfernt hat; dann Auftragen eines zweiten Fluids auf den ersten Sensor basierend sowohl auf der Bestimmung, dass das erste Fluid den Schmutz nicht entfernt hat, als auch auf dem bestimmten Nichtvorhandensein
-
Gemäß dem zumindest einen vorstehend dargelegten Verfahrensbeispiel ist das erste Fluid Druckluft, wobei das zweite Fluid eine Reinigungslösung ist.
-
Gemäß dem zumindest einen vorstehend dargelegten Verfahrensbeispiel kann das Verfahren ferner Folgendes beinhalten: Bestimmen von zweitem Schmutz auf einem zweiten Sensor; und Auftragen des Fluids nacheinander basierend auf dem Bestimmen, dass der erste und zweite Sensor innerhalb einer gemeinsamen Zone des Fahrzeugs liegen, auf den ersten und zweiten Sensor.
-
Gemäß dem zumindest einen Beispiel wird ein Computer offenbart, der programmiert ist, um eine beliebige Kombination der Verfahrensbeispiele auszuführen, die vorgehend dargelegt sind.
-
Gemäß dem zumindest einen Beispiel wird ein Computerprogrammprodukt offenbart, das ein computerlesbares Medium beinhaltet, das Anweisungen speichert, die durch einen Computerprozessor ausführbar sind, wobei die Anweisungen eine beliebige Kombination der Anweisungsbeispiele beinhalten, die vorangehend dargelegt sind.
-
Gemäß dem zumindest einen Beispiel wird ein Computerprogrammprodukt offenbart, das ein computerlesbares Medium umfasst, das Anweisungen speichert, die durch einen Computerprozessor ausführbar sind, wobei die Anweisungen eine beliebige Kombination der Verfahrensbeispiele beinhalten, die vorangehend dargelegt sind.
-
Unter Bezugnahme auf die Figuren, in denen gleiche Bezugszeichen gleiche Teile in den mehreren Ansichten angeben, ist ein autonomes Fahrsystem 10 für ein Fahrzeug 12 gezeigt, das ein bordeigenes Sensorreinigungssystem 14 zum Reinigen einer Vielzahl von Fahrzeugsensoren 16, 18 beinhaltet, wobei die Sensoren 16, 18 Sensoreingangsdaten an dem entsprechenden Detektor über ein Fenster davon empfangen. In der nicht beschränkenden Veranschaulichung in 1 sind die Sensoren 16 Kameras und die Sensoren 18 LIDAR-Vorrichtungen, die jeweils während des Betriebs des Fahrzeugs 12 in einem autonomen Fahrmodus verwendet werden können (z. B. Bereitstellen von Bildgebungsdaten, die zum Navigieren des Fahrzeugs 12 verwendet werden). Wie weiter unten beschrieben, kann das Reinigungssystem 14 während des Betreibens des Fahrzeugs 12 ein Fluid auf das Fenster von zumindest einem der Sensoren 16, 18 auftragen. Gemäß einem Beispiel kann das Fluid eine flüssige Reinigungslösung sein, die in einem bordeigenen Reservoir gespeichert wird. Das Reinigen der Sensoren 16, 18 kann erwünscht sein, da die Qualität von Bildgebungsdaten, die dadurch empfangen werden, zumindest teilweise auf der Sauberkeit von deren entsprechenden Fenstern basieren kann. In Abhängigkeit von der Umgebung und der Anzahl von Sensoren 16, 18 des Fahrzeugs 12 kann die Reinigungslösung relativ schnell aufgebraucht werden. Um Fluid zu sparen, kann das Sensorreinigungssystem 14 bestimmen, bei welchen Sensoren 16, 18 Schmutz auf deren entsprechenden Fenstern vorhanden ist, welche Art von Fluid aufzutragen ist, wie viel Fluid aufzutragen ist und wann es aufzutragen ist. Zumindest ein nicht beschränkendes Beispiel eines Prozesses des Reinigens der Sensoren 16, 18 wird nachfolgend beschrieben.
-
Unter Bezugnahme auf 1 ist das Fahrzeug 12 als ein Personenkraftwagen gezeigt; bei dem Fahrzeug 12 kann es sich jedoch auch um einen Truck, eine Geländelimousine (SUV), ein Wohnmobil, einen Bus, einen Zug, ein Wasserfahrzeug, ein Luftfahrzeug oder dergleichen handeln, der/das/die das Sensorreinigungssystem 14 beinhaltet. Gemäß zumindest einem Beispiel kann das autonome Fahrsystem 10 des Fahrzeugs 12 in einem beliebigen von einer Reihe von autonomen Modi betrieben werden. Zum Beispiel kann das Fahrzeug 12 in einem vollständig autonomen Modus (z. B. Stufe 5) betrieben werden, wie durch die Society of Automotive Engineers (SAE) (die den Betrieb mit den Stufen 0-5 definiert hat) definiert. In anderen Beispielen kann das Fahrzeug auf den Stufen 0-2 betrieben werden, wobei ein menschlicher Fahrer den Großteil der Fahraufgaben oftmals ohne Hilfe von dem Fahrzeug 12 überwacht oder steuert. Zum Beispiel ist bei Stufe 0 („keine Automatisierung“) ein menschlicher Fahrer für alle Fahrzeugvorgänge verantwortlich. Bei Stufe 1 („Fahrerassistenz“) unterstützt das Fahrzeug 12 manchmal beim Lenken, Beschleunigen oder Bremsen, aber der Fahrer ist noch immer für die große Mehrheit der Fahrzeugsteuerung verantwortlich. Bei Stufe 2 („partielle Automatisierung“) kann das Fahrzeug 12 das Lenken, Beschleunigen und Bremsen unter bestimmten Umständen ohne menschliche Interaktion steuern. In anderen Beispielen kann das Fahrzeug auf den Stufen 3-4 betrieben werden, wobei das Fahrzeug 12 mehr fahrbezogene Aufgaben übernimmt. Zum Beispiel kann das Fahrzeug 12 bei Stufe 3 („bedingte Automatisierung“) das Lenken, Beschleunigen und Bremsen unter bestimmten Umständen bewältigen sowie die Fahrumgebung überwachen. Bei Stufe 3 kann es jedoch erforderlich sein, dass der Fahrer gelegentlich eingreift. Bei Stufe 4 („hohe Automatisierung“) kann das Fahrzeug 12 die gleichen Aufgaben wie bei Stufe 3 bewältigen, ist jedoch nicht darauf angewiesen, dass der Fahrer in bestimmten Fahrmodi eingreift. Und in mindestens einem Beispiel wird das Fahrzeug 12 auf Stufe 5 („vollständige Automatisierung“) betrieben, wobei das Fahrzeug 12 alle Aufgaben ohne Eingreifen des Fahrers bewältigen kann.
-
Um in dem vollständig autonomen Modus betrieben zu werden, kann das autonome Fahrsystem 10 ein Sensorpaket 20, ein Lenksystem 22, ein Bremssystem 24, ein Antriebsstrangsystem 26, ein Kollisionsvermeidungssystem 28, das vorstehend beschriebene Sensorreinigungssystem 14, sowie eine Anzahl von anderen integrierten Systems, die angeordnet, programmiert oder anderweitig angepasst sind, um die Entscheidungsfindungsfähigkeiten, Erfahrungen und Interaktionen eines menschlichen Fahrers zu ersetzen, nutzen. Wie weiter unten beschrieben, kann jedes dieser Systeme 14, 20-28 eine oder mehrere interaktive Rechenvorrichtungen beinhalten (z. B. kann jedes System eine oder mehrere Rechenvorrichtungen umfassen, die Programmierungsanweisungen ausführen, die es den Systemen 14, 20-28 ermöglichen, gemeinsam das Fahrzeug 12 in dem vollständig autonomen Modus zu betreiben). Wie nachfolgend beschrieben, kann das Sensorpaket 20 Bildgebungsdaten von mehreren Sensoren empfangen und das Fahrsystem 10 kann diese Bildgebungsdaten dazu verwenden, das Fahrzeug 12 zu navigieren und dessen Bewegungen zu steuern.
-
Das Sensorpaket 20 kann einen oder mehrere Sensoren 16, 18, 32, einen oder mehrere Bildverarbeitungscomputer (nicht gezeigt), die mit den Sensoren 16-18, 32 gekoppelt sind, und einen oder mehrere Sätze von Anweisungen (wie z. B. Software, Firmware und dergleichen), die durch die Computer ausführbar sind, umfassen. Unter anderem kann das Sensorpaket 20 so programmiert sein, dass die Bildgebungsdaten (abgeleitet von den Sensoren 16-18, 32 und), die durch andere Fahrzeugsysteme 22-28 empfangen werden, autonome Navigation und autonomes Fahren des Fahrzeugs 12 ermöglichen. Nicht beschränkende Beispiele von autonomen Fahrsensoren beinhalten: die eine oder mehreren Tageslichtkameras 16 (z. B. komplementäre Metalloxidhalbleiter (CMOS)-Vorrichtungen, ladungsgekoppelte Vorrichtungen (CCD), Bildverstärker (sogenannte i2-Vorrichtungen) etc.) (z. B. sind acht für veranschaulichende Zwecke dargestellt); die eine oder mehreren Vorrichtungen zur Identifizierungserfassung und Entfernungsmessung mittels Laser (LIDAR) 18 (z. B. sind drei für veranschaulichende Zwecke dargestellt); Vorrichtungen zur Erfassung und Entfernungsmessung mittels Funk (RADAR) (nicht gezeigt); eine Navigationsvorrichtung (z. B. ein GPS (globales Positionierungssystem)- Sensor oder ein GLONASS (globales Navigationssatellitensystem) -Sensor) (keiner davon gezeigt); einen oder mehrere Beschleunigungsmesser (keiner davon gezeigt); ein oder mehrere Gyroskope (keiner davon gezeigt); und einen oder mehrere Laserentfernungsmesser 32 (LRF) (z. B. ist einer für veranschaulichende Zwecke dargestellt), um nur einige Beispiele zu nennen. Somit können einige der Sensoren 16-18, 32 sogenannte passive Sensoren sein (z. B. CMOS- oder CCD-Kameras), die Bildgebungsdaten ohne einen Sensorausgang empfangen, und einige der Sensoren 16-18, 32 können sogenannte aktive Sensoren sein (z. B. LIDAR-Vorrichtungen, LRF etc.), die Bildgebungsdaten als Reaktion auf einen Sensorausgang (wie z. B. eine sichtbare oder nicht sichtbare Lichtemission von dem entsprechenden Sensor), empfangen.
-
2 veranschaulicht ein Beispiel von Sensor 16, 18 oder 32. Der Sensor 16, 18 oder 32 kann ein Gehäuse 36 umfassen, das mit einem Fahrzeugkarosserieblech 38 und/oder Fahrzeugrahmen (nicht gezeigt) gekoppelt ist, z. B. von der Fahrzeugoberfläche 40 nach außen verlaufend. Der Sensor 16, 18 oder 32 kann einen Detektor (z. B. mit Lichtenergie- und/oder Wärmeenergie-empfindlicher/empfindlichen Oberflächen(s)) (nicht gezeigt) beinhalten, der sich innerhalb des Gehäuses 36 befindet. Ferner kann das Gehäuse 36 ein Fenster 42 umfassen, das dazu angepasst ist, Licht, Energie und dergleichen aus der Umgebung des Fahrzeugs dort hindurch zu lassen und am Detektor empfangen zu lassen. Dementsprechend kann eine Brennachse des Detektors mit dem Fenster 42 ausgerichtet sein. Es sind auch andere Sensorbeispiele vorhanden. Zum Beispiel veranschaulicht 6 ein anderes nicht beschränkendes Beispiel eines Sensors 16', 18', 32' (Seitenansicht), der unter Verwendung des Sensorreinigungssystems 14 gereinigt werden kann, z. B. unter anderem mit einem Korpus 36', der von einer Oberfläche 40' und einem Fenster 42', das sich an dem Korpus 36' befindet, verläuft. Es sind noch weitere Anordnungen vorhanden.
-
In dem veranschaulichten Beispiel aus 2 ist das Gehäuse 36 zylindrisch und das Fenster 42 ist eine bogenförmige Abdeckung, die aus einem Material mit einer relativ hohen Durchlässigkeit besteht (z. B. sodass in Bezug auf eine Menge von Licht, das auf das Material einfällt, eine relativ große Menge von Licht durch das Material läuft, z. B. wird eine relativ geringe Menge des Lichts durch das Fenster reflektiert oder absorbiert). Das in 2 gezeigte Fenster 42 kann zumindest teilweise das Gehäuse 36 umgeben. Dies kann insbesondere für Abtastvorrichtungen wie etwa Kameras 16, LIDAR-Vorrichtungen 18 oder LRF 32, die 0-360 Grad um einem Drehachse A abtasten können, nützlich sein. In einigen Beispielen kann der Detektor innerhalb des Gehäuses 36 fixiert sein oder kann alternativ an einer kardanischen Aufhängung oder dergleichen befestigt sein, sodass der innerhalb des Gehäuses 36 gedreht werden kann.
-
In zumindest einem Beispiel des Sensors 16, 18, 32 kann ein druckbeaufschlagtes erstes Fluid F1, ein druckbeaufschlagtes zweites Fluid F2 oder eine Kombination davon über das Gehäuse 36 empfangen werden (z. B. von einer oder mehreren Pumpen, nachfolgend besprochen) und von einer Runddüse 44, die sich oben auf dem entsprechenden Sensor befindet, nach unten ausgegeben werden, um das Fenster 42 davon zu reinigen. Gemäß einem nicht beschränkenden Beispiel ist das erste Fluid F1 ein Gas (z. B. Druckluft) und das zweite Fluid F2 ist eine Flüssigkeit (z. B. eine Reinigungslösung wie Wasser, Scheibenwischerflüssigkeit oder dergleichen).
-
Natürlich ist 2 nur ein Beispiel. Zum Beispiel kann das Gehäuse 36 der zumindest einigen Kamera- und LRF-Umsetzungen 16, 32 rechteckig mit einem im Allgemeinen ebenen Fenster 42 oder dergleichen sein. Ferner sind Beispiele von Sensoren 16, 18, 32 vorhanden, wobei sich das Gehäuse innerhalb des Karosserieblechs 38 des Fahrzeugs 12 befindet, z. B. sodass das Fenster 42 im Allgemeinen parallel zu der Oberfläche 40 ist. Es können noch weitere Beispiele vorhanden sein. Unabhängig von der Form, der Größe und dem Standort des entsprechenden Sensors kann eine Düse 44 (z. B. rund oder anderweitig) positioniert und ausgerichtet sein, um das erste oder zweite Fluid F1, F2 für das Fenster 42 bereitzustellen, wie durch das Reinigungssystem 14 gesteuert, wie weiter unten beschrieben.
-
Bei aktiv abtastenden Vorrichtungen kann auch ein Laser oder Emitter (nicht gezeigt) mit dem Detektor und Fenster 42 so ausgerichtet sein, dass Licht, Energie etc. durch das Fenster 42 übertragen werden kann und Reflexionen des Lichts, der Energie etc. gleichermaßen dort hindurch am Detektor empfangen werden können. So wie hierin verwendet, kann das Fenster 42 jede geeignete Linse (oder Reihe von Linsen), eine durchlässige Abdeckung oder eine Kombination davon sein. Ferner erfordern nicht alle Sensoren 16-18, 32 ein Fenster 42; somit können auch Beispiele von Sensoren 16-18, 32 ohne ein Fenster 42 vorhanden sein.
-
Das Lenksystem 22 kann beliebige geeignete Lenkkomponenten (z. B. elektrische Teile, mechanische Teile, elektromechanische Teile, Verbindungen oder dergleichen) und/oder eine oder mehrere Rechenvorrichtungen, die mit einer beliebigen Kombination der Lenkkomponenten gekoppelt sind, beinhalten, wobei die Rechenvorrichtungen die Bewegung der Lenkkomponenten steuern, um die Bewegungsrichtung des sich bewegenden Fahrzeugs 12 zu steuern. Andere Aspekte des Lenksystems 22, dessen Montage und Aufbau, und die Techniken zum Steuern von diesem sind dem Fachmann bekannt.
-
Das Bremssystem 24 kann beliebige geeignete Bremskomponenten beinhalten, die durch das System 24 verwendet werden, um Fahrzeugbewegung zu verlangsamen oder anzuhalten. In zumindest einem Beispiel beinhaltet das Bremssystem 24 ein computergesteuertes Antiblockier-Bremssystem, das es den Fahrzeugrädern (nicht gezeigt) ermöglicht, Traktionskontakt mit einer Straßenoberfläche zu halten, während eine Rechenvorrichtung die Anwendung einer Bremseingabe anweist, die andernfalls veranlassen würde, dass die Reifen blockieren und in Bezug auf die Straße rutschen würden. Andere Aspekte des Bremssystems 24, dessen Montage und Aufbau, und die Techniken zum Steuern von diesem sind dem Fachmann bekannt.
-
Das Antriebsstrangsystem 26 kann einen oder mehrere Fahrzeugmotoren (nicht gezeigt) umfassen, die mit einer Getriebebaugruppe (nicht gezeigt), einer oder mehreren Rechenvorrichtungen zum Steuern des Motors und/oder Getriebebaugruppengängen und dergleichen gekoppelt sind. Nicht beschränkende Beispiele des Motors beinhalten einen herkömmlichen Verbrennungsmotor, einen Elektromotor, einen Hybrid-Elektromotor etc. Unter Verwendung einer Vielzahl von Übersetzungsverhältnissen kann das Getriebe Leistung zwischen dem Motor und einer Antriebsachse koppeln, was letztendlich Drehenergie für das Fahrzeugrad/die Fahrzeugräder bereitstellt. Andere Aspekte des Antriebsstrangsystems 26, dessen Montage und Aufbau, und die Techniken zum Steuern von diesem sind dem Fachmann bekannt.
-
Das Kollisionsvermeidungssystem 28 kann eine oder mehrere Rechenvorrichtungen umfassen, die Daten und/oder Anweisungen an das bzw. von dem Lenksystem 22, Bremssystem 24, Antriebsstrangsystem 26 oder dergleichen bereitstellen bzw. empfangen, wobei die Anweisungen mit einem möglichen oder bevorstehenden Kollisionsereignis assoziiert sind. In zumindest einigen Beispielen kann das Kollisionsvermeidungssystem 28 zumindest teilweise innerhalb der Lenk-, Brems- und/oder Antriebsstrangsysteme 22-26 integriert sein. In anderen Beispielen kann das Kollisionsvermeidungssystem 28 ein physisch und logisch getrenntes Rechensystem des Fahrzeugs 12 sein. Unabhängig von der Anordnung beinhalten nicht beschränkende Beispiele von Kollisionsvermeidungsanweisungen, die durch das System 28 bereitgestellt oder empfangen werden, Folgendes: Fahrzeugbremsen anzuwenden, um das Fahrzeug 12 zu verlangsamen, um eine Kollision mit einem anderen Objekt zu vermeiden oder im einem bestimmten oder vorbestimmten Weg zu folgen (z. B. entlang einer Straße); das Lenk- und/oder Bremssystem 22, 24 des Fahrzeugs als Reaktion auf eine Bestimmung, das die Fahrzeugreifen in Bezug auf eine Straße rutschen oder gleiten, zu steuern; eine Fahrzeuglenkanweisung bereitzustellen, um die Richtung des Fahrzeugs 12 zu steuern (z. B. um das Fahrzeug innerhalb der Fahrbahnmarkierungen zu halten oder um eine Kollision mit einem anderen Objekt (z. B. einer Person, einem Fahrzeug, Infrastruktur etc.) zu vermeiden); eine Anweisung bereitzustellen, um die Drehzahl des Fahrzeugmotors und/oder des Fahrzeuggetriebes zu steuern (z. B. um die Bewegung des Fahrzeugs 12 zu verlangsamen oder anzuhalten, um eine Kollision oder einen anderen gefährlichen Umstand zu vermeiden); eine Anweisung bereitzustellen, Fahrzeugairbags genau vor einem Kollisionsereignis auszulösen; eine Kombination dieser Anweisungen bereitzustellen; und dergleichen. Es können noch weitere Beispiele vorhanden sein. Wie weiter unten beschrieben, kann das autonome Fahrsystem 10 zuerst bestimmen, ob eine dieser beispielhaften Anweisungen initiiert wurde, bevor damit fortgefahren wird, einen der Sensoren 16, 18, 32 zu reinigen.
-
Wie vorstehend beschrieben, kann das autonome Fahrsystem 10 des Fahrzeugs 12 auch das Sensorreinigungssystem 14 umfassen, z. B. zum Entfernen von Schmutz von den Sensoren 16, 18, 32 des Sensorpakets 20. Der autonome Fahrzeugbetrieb kann sich zumindest teilweise auf die Sauberkeit der Sensoren 16, 18, 32, über die das System 14 autonome Fahrinformationen erlangt, verlassen. 3-4 veranschaulichen ein solches beispielhaftes System 14.
-
3 veranschaulicht, dass das Reinigungssystem 14 unter anderem Folgendes umfassen kann: einen Computer 50, einen oder mehrere Fahrzeugsensoren S1, S2 und eine oder mehrere Pumpen 52, 54, 56. Der Computer 50 kann mit einer geeigneten drahtgebundenen oder drahtlosen Netzwerkverbindung 58 gekoppelt sein, die elektronische Kommunikation zwischen dem Sensorreinigungssystem 14 (z. B. oder insbesondere dem Computer 50), dem Sensorpaket 20, dem Lenksystem 22, dem Bremssystem 24, dem Antriebsstrangsystem 26, dem Kollisionsvermeidungssystem 28 und/oder dergleichen ermöglicht. In zumindest einem Beispiel beinhaltet die Verbindung 58 eines oder mehrere von einem Controller-Area-Network-(CAN-)Bus, Ethernet, Local Interconnect Network (LIN), eine Glasfaserverbindung etc. Andere Beispiele sind auch vorhanden. Zum Beispiel kann die Verbindung 58 alternativ oder in Kombination mit z. B. einem CAN-Bus eine oder mehrere einzelne drahtgebundene oder drahtlose Verbindungen umfassen, wie z. B. die Verbindungen 58g, 58h, die zeigen, wie die Sensoren S1, S2 mit dem Computer 50 gekoppelt sind.
-
Bei dem Computer 50 kann es sich um einen einzelnen Computer handeln (oder mehrere Rechenvorrichtungen - z. B., wie vorstehend beschrieben, kann der Computer 50 physisch und/oder logisch mit anderen Fahrzeugsystemen und/oder -teilsystemen geteilt werden). Der Computer 50 kann eine Verarbeitungsschaltung oder einen Prozessor 62 umfassen, der bzw. die an den Speicher 64 gekoppelt ist. Zum Beispiel kann der Prozessor 62 eine beliebige Vorrichtungsart sein, die in der Lage ist, elektronische Anweisungen zu verarbeiten, wobei nicht einschränkende Beispiele einen Mikroprozessor, eine Mikrosteuerung oder Steuerung, eine anwendungsspezifische integrierte Schaltung (ASIC) etc. einschließen - um nur einige zu nennen. Im Allgemeinen kann der Computer 50 dazu programmiert sein, digital gespeicherte Anweisungen, die in dem Speicher 64 gespeichert sein können, auszuführen, die dem Computer 50 unter anderem Folgendes ermöglichen: Schmutz auf einem Sensor 16, 18, 32 des Fahrzeugs 12 zu bestimmen, ein Nichtvorhandensein einer Ausführung einer Kollisionsvermeidungsanweisung zu bestimmen, und basierend auf den Bestimmungen, ein Fluid auf den Sensor 16, 18, 32 aufzutragen. Im hier verwendeten Sinne sollten Ablagerungen so weit ausgelegt werden, dass dazu Schmutz, Staub, Sand, Schlamm, Pollen, Körperteile oder Exkremente von Insekten oder Tieren, Müll- oder Abfallstücke, Eis, Schnee, Nahrungsmittel, andere ähnliche Schmutzstoffe etc. gehören.
-
Der Speicher 64 kann ein beliebiges nichtflüchtiges computernutzbares oder -lesbares Medium beinhalten, das eine oder mehrere Speichervorrichtungen oder -artikel beinhalten kann. Beispielhafte nichtflüchtige computernutzbare Speichervorrichtungen schließen die gängigen Computersysteme RAM (Direktzugriffsspeicher), ROM (Festspeicher), EPROM (löschbarer, programmierbarer ROM), EEPROM (elektrischer löschbarer, programmierbarer ROM) sowie ein beliebiges anderes flüchtiges oder nichtflüchtiges Medium ein. Nichtflüchtige Medien schließen zum Beispiel optische oder magnetische Platten und andere Dauerspeicher ein. Flüchtige Medien schließen einen dynamischen Direktzugriffsspeicher (DRAM) ein, der üblicherweise einen Hauptspeicher darstellt. Zu gängigen Formen computerlesbarer Medien gehören beispielsweise 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 physisches Medium mit Lochmustern, ein RAM, ein PROM, ein EPROM, ein FLASH-EEPROM, ein beliebiger anderer Speicherchip oder eine beliebige andere Speicherkassette oder ein beliebiges anderes Medium, das von einem Computer gelesen werden kann. Wie vorstehend erläutert, können ein oder mehrere Computerprogrammprodukte, die als Software, Firmware oder dergleichen ausgeführt sein können, auf dem Speicher 64 gespeichert sein.
-
Die Sensoren S1, S2 sind mit dem Computer 50 elektrisch gekoppelt gezeigt, um Sensordaten dafür bereitzustellen (z. B. Temperaturdaten, Atmosphärendruckdaten, Feuchtigkeitsdaten, Regendaten etc.). Es kann eine beliebige geeignete Menge von Sensoren verwendet werden. Zusätzlich können mehrere Sensoren vom S1-Typ verwendet werden, es können mehrere Sensoren vom S2-Typ verwendet werden, es kann eine Kombination davon verwendet werden und/oder er können zusätzliche Typen von Sensoren verwendet werden.
-
Die Sensoren S1, S2 können sich in jedem geeigneten Fahrzeugstandort befinden; z. B. können sie sich zumindest teilweise außerhalb einer Fahrzeugkabine befinden, sodass sie Umgebungsfaktoren messen können, die auch durch die Sensoren 16, 18, 32 wahrgenommen werden. Gemäß einem nicht beschränkenden Beispiel misst der Sensor S1 Temperaturdaten und der Sensor S2 misst Regendaten. Zum Beispiel kann sich der Sensor S1 in einem Fahrzeuggrill oder in der Nähe der vorderen Windschutzscheibe des Fahrzeugs befinden. Und zum Beispiel kann sich der Sensor S2 an einer Windschutzscheibe befinden (z. B. am Sockel einer Befestigung für einen Rückspiegel), so wie dem Fachmann bekannt. Unter Verwendung der Sensoren S1, S2 kann der Computer 50 bestimmen, ob es Niederschlag gibt, welche Art von Niederschlag auftritt (z. B. Regen, Schnee, Schneeregen, Hagel etc.), eine Regenrate (z. B. Regen pro Zeiteinheit an einer entsprechenden Windschutzscheibe) etc. Wie nachstehend erörtert, kann der Computer 50 kein flüssiges Fluid verwenden, um die Sensoren 16, 18, 32 zu reinigen, wenn die Regenrate einen Schwellenwert übersteigt, und/oder der Computer 50 kann das auf die Sensoren 16, 18, 32 aufzutragende Fluid erwärmen, wenn die Temperaturdaten eine Temperatur kleiner als einen vorbestimmten Schwellenwert (z. B. weniger als 5 °C) angeben. Es sind auch andere Beispiele und Anordnungen vorhanden.
-
3 veranschaulicht schematisch, dass der Computer 50 selektive Betätigung der Pumpen 52-56 steuern kann. Zum Beispiel kann der Computer 50 wahlweise über Netzwerkverbindungen 58a, 58b, 58c die Pumpen 52-56 EIN und AUS schalten. Oder der Computer 50 kann selektiv ein elektrisches Signal an die Pumpen über die Verbindungen 58a-58c steuern, das eine Drehzahl oder einen anderen Aspekt der Pumpen 52-56 steuert (z. B. Steuern von variablen Drehzahlen von Pumpen 52-56 gemäß eines Spannung oder eines Stroms, die/der über die Verbindungen 58a-58c bereitgestellt wird). Es sind auch andere Pumpensteuerungsbeispiele möglich.
-
Wie in 3 gezeigt, kann jede der Pumpen 52-56 eine Heizung (H) umfassen, die selektiv durch den Computer über die Verbindungen 58d, 58e bzw. 58f betätigt werden kann. Auf diese Weise kann Fluid, das sich durch die Pumpen 52-56 bewegt, selektiv erwärmt werden, bevor es aus den entsprechenden Düsen 44 ausgegeben wird. Wie weiter unten erklärt, kann das Fluid F1 (z. B. ein Gas) erwärmt werden, um Schnee- oder Eisansammlung an einem Sensorfenster 42 zu schmelzen. Gleichermaßen, wenn der Sensor S1 angibt, dass die Umgebungstemperatur kleiner als ein Schwellenwert ist (z. B. kleiner als 5 °C), kann das Fluid F2 (z. B. eine Flüssigkeit) erwärmt werden, um Schnee- oder Eisansammlung zu schmelzen und/oder kann erwärmt werden, um zu verhindern, dass das Fluid F2 an dem entsprechenden Sensor 16, 18, 32 gefriert. Während die Verbindungen 58a-58f als einzelne Verbindungen gezeigt sind, sind andere Beispiele vorhanden, z. B. einschließlich Beispielen, bei denen Anweisungen, die von dem Computer 50 dorthin gesendet werden, über einen Bus, über eine drahtlose Verbindung oder dergleichen kommuniziert werden. Ferner ist es für die Heizungen H nicht erforderlich, dass diese sich an den Pumpen 52-56 befinden. Zum Beispiel können sich eine oder mehrere der Heizungen H nachgeschaltet zu den Pumpen 52-56 befinden, z. B. näher an den entsprechenden Düsen 44.
-
4 veranschaulicht schematisch, dass sich die Pumpen 52, 54 in einem Reservoir 70 (z. B. zum Speichern des zweiten Fluids F2) befinden können, während die Pumpe 56, die das Fluid F1 bereitstellen kann, ein solches Reservoir nicht erfordern kann. In der nachfolgenden Erörterung wird das erste Fluid F1 (bereitgestellt durch die Pumpe 56) als Druckluft beschrieben und das zweite Fluid F2 (bereitgestellt durch die Pumpen 52-54) wird als eine Flüssigkeit (z. B. eine Reinigungslösung) beschrieben. Dies ist lediglich ein Beispiel. Ferner ist ein Netzwerk von Kanälen 72 (L1, L2, L3 L34) beschrieben, das fluidische Kommunikation zwischen den Pumpen 52-56 und den Sensoren 16, 18, 32 ermöglicht; dieses Netzwerk 72 ist auch lediglich ein Beispiel (andere Anordnungen sind möglich).
-
In dem veranschaulichten Beispiel sind die Sensoren 16, 18, 32 entlang von Fahrzeugzonen Z1, Z2, Z3 verteilt. Die Zone Z1 definiert eine Vorwärtsrichtung des Fahrzeugs, z. B. einschließlich Sensoren, die sich zwischen einer Oberseite einer nach vorn gerichteten Windschutzscheibe (nicht gezeigt) des Fahrzeugs und einem vorderen Fahrzeugstoßfänger BF befinden. Die Zone Z2 definiert eine mittlere Region, z. B. einschließlich Sensoren, die sich zwischen der Zone Z1 und einer Oberseite einer nach hinten gerichteten Windschutzscheibe (nicht gezeigt) des Fahrzeugs befinden. Und die Zone Z3 definiert eine rückwärts gerichtete Region, z. B. einschließlich Sensoren, die sich zwischen der Zone Z2 und einem hinteren Fahrzeugstoßfänger BR befinden.
-
Insbesondere kann die Pumpe 52 in der Zone Z1 über den Anschluss P1 mit Folgendem in fluidischer Kommunikation stehen: mit einer Kamera 16 über die Kanäle L1, L3; mit LRF 32 über die Kanäle L2, L3; mit einem backbordseitigen LIDAR 18 über die Kanäle L4, L5; und mit einer Düse WF für die nach vorn zeigende Windschutzscheibe über die Kanäle L4, L6. Auch in der Zone Z1 kann die Pumpe 52 über den Anschluss P2 mit einem steuerbordseitigen LIDAR 18 über den Kanal L7 in fluidischer Kommunikation stehen.
-
Auch in der Zone Z1 kann die Pumpe 56 über den Anschluss P3 mit einer Kamera 16 über den Kanal L8 in fluidischer Kommunikation stehen. Gleichermaßen kann die Pumpe 56 in der Zone Z1 über den Anschluss P4 mit Folgendem in fluidischer Kommunikation stehen: mit einem steuerbordseitigen LIDAR 18 über die Kanäle L9, L10; mit einem backbordseitigen LIDAR 18 über den Kanal L11; und mit LRF 32 über die Kanäle L9, L34.
-
Unter besonderer Bezugnahme auf die Zone Z2 kann die Pumpe 54 über den Anschluss P5 mit einem Verteiler M1 über den Kanal L12 in fluidischer Kommunikation stehen. Drei backbordseitige Kameras 16 können mit dem Verteiler M1 über die Kanäle L13, L14 bzw. L15 in fluidischer Kommunikation stehen. Gleichermaßen können drei steuerbordseitige Kameras 16 mit dem Verteiler M1 über die Kanäle L16, L17 bzw. L18 in fluidischer Kommunikation stehen.
-
Auch in der Zone Z2 kann die Pumpe 56 über den Anschluss P6 mit einem Verteiler M2 über den Kanal L19 in fluidischer Kommunikation stehen. Die drei backbordseitigen Kameras 16 können mit dem Verteiler M2 über die Kanäle L20, L21 bzw. L22 in fluidischer Kommunikation stehen. Gleichermaßen können die drei steuerbordseitige Kameras 16 mit dem Verteiler M2 über die Kanäle L23, L24 bzw. L25 in fluidischer Kommunikation stehen. Unter besonderer Bezugnahme auf die Zone Z3 kann die Pumpe 54 über den Anschluss P7 mit einem Verteiler M3 über den Kanal L26 in fluidischer Kommunikation stehen. Und eine LIDAR-Vorrichtung 18, eine Kamera 16 und eine Düse WR (zum Reinigen der nach hinten zeigenden Windschutzscheibe) können mit dem Verteiler M3 über die Kanäle L27, L28 bzw. L29 in fluidischer Kommunikation stehen.
-
Auch in der Zone Z3 kann die Pumpe 56 über den Anschluss P6 mit einem Verteiler M4 über die Kanäle L19, L22, L30 und den Verteiler M2 in fluidischer Kommunikation stehen. Und die LIDAR-Vorrichtung 18, die Kamera 16 und die Düse WR (in der Zone Z3) können mit dem Verteiler M4 über die Kanäle L31, L32 bzw. L33 in fluidischer Kommunikation stehen. Somit kann der Computer 50 im Betrieb die Pumpe 52 steuern, um das zweite Fluid F2 (über Anschluss P1) an die vordere Kamera 16, die backbordseitige LIDAR-Vorrichtung 18, den LRF 32 und die Düse WF der vorderen Windschutzscheibe bereitzustellen. Oder wahlweise kann der Computer 50 die Pumpe 52 steuern, um das zweite Fluid F2 (über Anschluss P2) an die steuerbordseitige LIDAR-Vorrichtung 18 bereitzustellen. Natürlich sind andere Anordnungen ebenso möglich, z. B. wobei die Pumpe 52 dedizierte und selektiv betätigbare Anschlüsse für alle Sensoren 16, 18, 32 innerhalb der Zone Z1 aufweist.
-
Gleichermaßen kann der Computer 50 wahlweise den Anschluss P5 der Pumpe 54 steuern, um das Fluid F2 an die Zone Z2 bereitzustellen, oder den Anschluss P7 steuern, um das Fluid F2 an die Zone Z3 bereitzustellen. Ferner kann der Computer 50 gleichermaßen die Pumpe 56 durch wahlweise Steuerung der Anschlüsse P3, P4, P6 steuern. Zum Beispiel kann die wahlweise Steuerung der Anschlüsse P3 oder P4 die Bereitstellung des ersten Fluids F1 an die Zonen Z1 und Z2 steuern und die wahlweise Steuerung von Anschluss P6 kann die Bereitstellung des ersten Fluids F1 an die Zonen Z2 und Z3 steuern. Erneut sind andere Anordnungen ebenso möglich, z. B. wobei die Pumpe 54 und/oder die Pumpe 56 dedizierte und selektiv betätigbare Anschlüsse für alle Sensoren 16, 18, 32 innerhalb der entsprechenden Zonen aufweist. Demnach ist 4 lediglich ein Beispiel.
-
Wie nachfolgend detaillierter erklärt, kann das Reinigungssystem 14 dazu verwendet werden, einen Sensor (z. B. 16, 18, 32) pro Zone zu einer beliebigen gegebenen Zeit zu reinigen. Somit, wenn der Computer 50 bestimmt, dass beide LIDAR-Vorrichtungen 18 in der Zone Z1 Schmutz aufweisen, der entfernt werden muss (z. B. unter Verwendung eines Fluids F2), kann der Computer 50 eine Priorität festlegen (z. B. welcher schmutziger ist) und/oder kann bestimmen, die LIDAR-Vorrichtungen 18 nacheinander zu reinigen (z. B. anstelle von gleichzeitig). Wenn der Computer 50 zum Beispiel bestimmt, dass das autonome Fahrsystem 10 in einem vollständig autonomen Modus betrieben wird, dann kann der Computer 50 bestimmen, die Sensoren nacheinander zu reinigen. Unter anderen Umständen (z. B. wenn das Fahrzeug 12 geparkt ist oder in einem anderen autonomen Modus betrieben wird), kann der Computer 50 jedoch bestimmen, die Sensoren 16, 18, 32 zumindest teilweise gleichzeitig zu reinigen. Es verstehen sich, dass während des Reinigen der Vorrichtungen 18 das zweite Fluid F2 (z. B. eine Flüssigkeit) das Sichtfeld des entsprechenden Sensors verdunkeln kann und dass Bildgebungsdaten, die während dieses Intervalls von dort erlangt werden, zum Betreiben des Fahrzeugs 12 in dem vollständig autonomen Modus nicht geeignet sein können. Durch Reinigen von jeweils einem Sensor (z. B. zumindest innerhalb einer gegebenen Zone) kann der Computer 50 jedoch damit fortfahren, Bildgebungsdaten von anderen Sensoren innerhalb der Zone zu sammeln, während der ausgewählte Sensor gereinigt wird.
-
Somit kann der Computer 50 in zumindest einem Beispiel bestimmen, gleichzeitig zwei Sensoren in unterschiedlichen Zonen zu reinigen. Zum Beispiel kann der Computer 50 in dem vollständig autonomen Modus gleichzeitig die backbordseitige LIDAR-Vorrichtung 18 (Zone Z1) und die LIDAR-Vorrichtung 18, die sich in Zone Z3 befindet, reinigen. Es sind auch andere, zumindest teilweise gleichzeitige Szenarios vorhanden.
-
Unter Bezugnahme auf 5 ist ein Prozess zum Verwenden des Sensorreinigungssystems 14 veranschaulicht, der auftritt, während das Fahrzeug 12 in einem autonomen Fahrmodus betrieben wird. In zumindest dem folgenden Beispiel befindet sich das Fahrzeug 12 in einem vollständig autonomen Fahrmodus.
-
Der Prozess beginnt mit Block 505, wobei der Computer 50 eine Prüfung dahingehend durchführen kann, ob ein Fenster 42 von einem der Sensoren 16, 18, 32 verschmutzt ist (z. B. dass zumindest etwas Schmutz darauf vorhanden ist, der ein entsprechendes Sichtfeld von dessen Detektor verdunkeln kann). Um das Vorhandensein von Schmutz zu bestimmen, kann der Prozessor 62 des Computers 50 einen oder mehrere Erkennungsalgorithmen, die in einem Speicher 64 abgelegt sind, ausführen, z. B. wenn die Sensoren 16, 18, 32 Bildgebungsdaten empfangen und verarbeiten. Diese Algorithmen können Reihen von Anweisungen beinhalten, die eine beliebige Anzahl von Routinen ausführen, darunter unter anderem: Teilen eines Bildbereichs (z. B. durch den Detektor aufgenommen) in eine Vielzahl von Unterregionen; Bestimmen von einem oder mehreren Basislinien-Verzerrungsparametern für zumindest einige der Unterregionen, wobei die Basislinien-Verzerrungsparameter mit Sensoroptiken und anderer Sensorhardware assoziiert sind (z. B. beinhalten nicht beschränkende Verzerrungsparameterbeispiele laterale und/oder longitudinale chromatische Aberrationen, Vignettierung und andere bekannte Verzerrungen); Bestimmen, ob jede entsprechende Unterregion größere Verzerrung als die Basislinie zeigt; und/oder Markieren der Unterregion durch Speichern einer Kennung, die mit dem Speicher 64 der Unterregion assoziiert ist. Natürlich ist dieser Algorithmus lediglich ein Beispiel; andere Techniken können durch den Computer 50 während der Prüfung eingesetzt werden. Diese und andere digitale Bildverarbeitungstechniken sind dem Fachmann bekannt.
-
Ferner, wie in 1 und 4 als Beispiel dargestellt, kann das Fahrzeug 12 eine Vielzahl von Sensoren 16, 18, 32 aufweisen. Somit kann der Computer 50 die Prüfung in Bezug auf alle der Sensoren 16, 18, 32 durchführen. Dies kann nacheinander oder zumindest teilweise gleichzeitig erfolgen.
-
In Block 510 (der folgt) kann der Computer 50 bestimmen, ob Schmutz 80 auf zumindest einem Sensorfenster 42 vorhanden ist (siehe auch 2). Wenn der Computer 50 das Vorhandensein von Schmutz 80 bestimmt, fährt der Prozess 500 mit Block 515 fort. Und wenn der Computer 50 kein Vorhandensein von Schmutz bestimmt, kann der Prozess 500 zurückspringen und den Block 505 wiederholen. Dies kann wiederholt erfolgen, z. B. während die Zündzustand des Fahrzeugs EINGESCHALTET ist.
-
In Block 515 kann der Computer 50 bestimmen, ob ein Regenratenparameter größer als ein vorbestimmter Regenratenschwellenwert ist. Zum Beispiel kann der Computer 50 während des Prozesses 500 Sensordaten von Sensor S2 empfangen, einen Regenratenparameter daraus bestimmen und diesen Parameter mit dem Schwellenwert vergleichen. Wenn der Regenratenparameter nicht größer als der Schwellenwert ist, dann fährt der Prozess mit Block 530 (der weiter unten erörtert wird) fort. Wenn der Computer 50 jedoch bestimmt, dass der Regenratenparameter größer als der Schwellenwert ist, fährt der Prozess mit Block 520 fort. In Block 520 trägt der Computer 50, basierend auf der Bestimmung in Block 515, ein erstes Fluid F1 auf das entsprechende Sensorfenster 42 auf. In Fortsetzung des vorhergehenden Beispiels kann das erste Fluid F1 Druckluft oder ein anderes geeignetes Gas sein. Durch Ausstoßen von Druckluft kann das Sensorreinigungssystem 14 das endliche Volumen des zweiten Fluids F2 an Bord des Fahrzeugs 12 (z. B. in Reservoir 70) aufsparen. Somit kann der Regenratenschwellenwert einer Regenrate entsprechen, die empirisch oder theoretisch als geeignet für ein Entfernen von allgemeinen Formen von Schmutz 80 von dem Sensor 16, 18, 32 bestimmt wurde.
-
In Block 525, der auf Block 520 folgt, kann der Computer 50 bestimmen, ob das Auftragen des ersten Fluids F1 Schmutz 80 von dem entsprechenden Sensor entfernt hat. Gemäß einem Beispiel kann dies eine Ausführung des vorstehend erörterten Erkennungsalgorithmus (z. B. in Block 505) beinhalten. In zumindest einigen Beispielen kann der Computer 50 die jeweilige(n) Unterregion(en) (des Detektors, der zuvor mit dem Schmutz 80 assoziiert war) mit den zuvor bestimmten Basislinien-Verzerrungsparametern vergleichen. Wenn, in Block 525, der Computer 50 bestimmt, dass der Schmutz 80 entfernt wurde, dann kann der Prozess 500 zu Block 505 zurückspringen und zumindest einen Teil des Prozesses wiederholen. Wenn der Computer 50 jedoch bestimmt, dass der Schmutz 80 nicht entfernt wurde, dann kann der Prozess 500 mit Block 530 fortfahren.
-
In Block 530 (der auf Block 515 oder Block 525 folgen kann) bestimmt der Computer 50, ob eine Kollisionsvermeidungsanweisung gerade ausgeführt wird (z. B. eine bestehende Ausführung) oder innerhalb eines vorbestimmten Zeitintervalls ausgeführt werden wird (z. B. innerhalb von 3 Sekunden). Einige Beispiele für Kollisionsvermeidungsanweisungen wurden vorstehend aufgeführt; es sind jedoch andere Beispiele vorhanden. Bei Nichtvorhandensein der Ausführung einer Kollisionsvermeidungsanweisung (oder bei Nichtvorhandensein der Initiierung der Kollisionsvermeidungsanweisung innerhalb des vorbestimmten Zeitintervalls) kann der Prozess 500 mit Block 550 fortfahren. Wenn der Computer 50 jedoch bestimmt, dass entweder eine Kollisionsvermeidungsanweisung gerade ausgeführt wird (oder innerhalb des vorbestimmten Intervalls initiiert werden kann), dann fährt der Prozess 500 mit Block 535 fort. In Block 535 führt der Computer 50 eine Pause oder Unterbrechung aus, z. B. Abwarten eines vorbestimmten Wartezeitraums, bevor das Fluid F2 auf den entsprechenden Sensor aufgetragen wird. Auf diese Weise kann eine zuvor ausgeführte Kollisionsvermeidungsanweisung vollständig ausgeführt werden oder eine Kollisionsvermeidungsanweisung, die wahrscheinlich innerhalb des vorbestimmten Zeitintervalls auszuführen ist, kann initiiert und abgeschlossen werden. Nur zum Zwecke der Veranschaulichung ist das zuvor beschriebene Kollisionsvermeidungsanweisungsbeispiel zu erachten, wobei der Computer 50 in dem vollständig autonomen Modus bestimmt, dass eine Fahrzeuglenkanweisung bereitgestellt wurde, um die Richtung des Fahrzeugs 12 zu steuern, um das Fahrzeug 12 innerhalb der Fahrbahnmarkierungen zu halten. In diesem Beispiel kann der Computer 50 (oder ein anderer Aspekt des autonomen Fahrsystems 10) zu dem Zeitpunkt, zu dem der Computer 50 den Block 530 ausführt, bestimmen, dass das Fahrzeug 12 auf seiner Fahrspur driftet. Somit kann noch keine Kollisionsvermeidungsanweisung ausgeführt werden. Wenn das Fahrzeug 12 weiterhin driftet, kann der Computer 50 eine relativ hohe Wahrscheinlichkeit (z. B. mehr als 50 %) bestimmen, dass eine Kollisionsvermeidungsanweisung ausgeführt wird, da das Driften über eine Fahrbahnmarkierung eine solche Anweisung auslösen würde. In diesem Beispiel kann der Computer 50 von Block 530 zu Block 535 fortfahren.
-
In zumindest einem Beispiel von Block 535 stellt der Computer 50 einen Zeitgeber ein. Auf diese Weise kann der Computer 50 nicht unendlich zwischen den Blöcken 530 und 535 hin und her springen.
-
In Block 540, der folgt, bestimmt der Computer 50, ob der Zeitgeber abgelaufen ist. Zum Beispiel kann der Computerspeicher 64 einen Zeitgeberablaufwert speichern. Wenn der Zeitgeber abgelaufen ist, kann der Prozess 500 zu Block 505 zurückspringen und zumindest einen Teil des Prozesses 500 wiederholen. Dies kann es dem Computer 50 auch erlauben, erneut zu prüfen, ob der Schmutz 80 immer noch auf den Sensoren 16, 18, 32 vorhanden ist. Wenn der Zeitgeber nicht abgelaufen ist, springt der Prozess 500 zu Block 530 zurück und wiederholt sich.
-
Sobald der Prozess 500 mit Block 550 fortfährt, kann der Computer 50 ein zweites Fluid F2 auf das Sensorfenster 42 auftragen. Dies kann während des vorbestimmten Zeitintervalls (oder dem Äquivalent davon, wenn eine Kollisionsvermeidungsanweisung wahrscheinlich zu initiieren war) erfolgen. Das Auftragen des Fluids F2 kann über ein vorbestimmtes Reinigungsintervall erfolgen, z. B. innerhalb von 500 Millisekunden (ms), und das vorbestimmte Reinigungsintervall kann eine kürzere Dauer als das vorbestimmte Zeitintervall aufweisen. Auf diese Weise kann eine Verzerrung der Umgebung, die durch Ausstoßen einer Flüssigkeit auf dem entsprechenden Sensorfenster 42 hervorgerufen wird, für das autonome Fahrsystem 10, das in dem vollständig autonomen Fahrmodus betrieben wird, minimal störend wirken. Ferner kann der Sensor, wenn er, im Gegensatz zur Reinigung des entsprechenden Sensors mit Druckluft F1, mit der Flüssigkeit F2 gereinigt wird, nicht in der Lage sein, nützliche oder hilfreiche Bildgebungsdaten bereitzustellen und innerhalb der entsprechenden Zone können nur die Bildgebungsdaten von den anderen Sensoren dazu verwendet werden, in dem vollständig autonomen Modus zu fahren. Um ein Beispiel zu veranschaulichen ist die Zone Z1 zu betrachten. Wenn die backbordseitige LIDAR-Vorrichtung 18 gereinigt wird, kann das autonome Fahrsystem 10 während des Reinigungsintervalls nur Bilddaten von der Kamera 16 (in der Nähe der Front des Fahrzeugs 12), der steuerbordseitigen LIDAR-Vorrichtung 18 und dem LRF 32 empfangen. Somit kann es wünschenswert sein, die Dauer des Reinigungsintervalls zu minimieren. Ferner, wie vorhergehend erklärt, kann der Computer 50 jeweils einen Sensor 16, 18, 32 pro Zone auswählen, der mit dem Fluid F2 zu reinigen ist, wobei der Computer 50 gleichzeitig mehrere Sensoren unter Verwendung von Fluid F1 reinigen kann, z. B. unabhängig davon, ob sich diese in der gleichen Zone oder einer anderen Zone befinden.
-
Gemäß zumindest einem Beispiel von Block 550 kann der Computer 50 einen Schmutzstandort im Speicher 64 speichern. Dieser Standort kann mit den Unterregionen, die im vorhergehenden Block 550 bestimmt werden, assoziiert sein. Ferner kann der Computer 50, basierend auf dem Auftragen des Fluids F2 und dem entsprechenden Schmutz 80, einen Zähler, der mit dem Schmutzstandort assoziiert ist, erhöhen. Zum Beispiel kann beim ersten Versuch, den Schmutz 80 zu entfernen, der Zählerwert eins (1) betragen. Wenn wiederholte Versuche vorgenommen werden (wie nachfolgend erörtert), dann kann der Zähler auf zwei (2), drei (3) etc. erhöht werden. Nach Block 550 fährt der Prozess mit 555 fort.
-
In Block 555 bestimmt der Computer 50, ob der Zählerwert größer als ein vorbestimmter Schwellenwert ist (z. B. ob die Menge der Anwendungen des zweiten Fluid F2, um den jeweiligen Schmutz 80 zu entfernen, größer als ein Schwellenwert ist (z. B. fünf Anwendungen des Fluids F2)). Wenn der Zählerwert größer als der vorbestimmte Schwellenwert ist, fährt der Prozess 500 mit Block 560 fort. Wenn dies nicht der Fall ist, dann kann der Prozesscomputer 50 zu Block 525 zurückspringen und zumindest einen Teil des Prozesses 500 wiederholen. Auf diese Weise kann die Menge des Fluids F2 gespart werden, z. B. wird das System 14 dabei gehemmt, die Gesamtheit oder zu viel Fluid F2 für den Schmutz 80 allein einzusetzen.
-
In Block 560 kann der Computer 50 den Schmutzstandort für spätere Schmutzprüfungen markieren. Wenn zum Beispiel für eine Region des Fensters 42 bestimmt wird, dass dort Schmutz vorhanden ist, der nach wiederholten Versuchen nicht entfernt wird, kann es nicht wünschenswert sein, den Prozess 500 zu wiederholen und zu versuchen, den gleichen Schmutz 80 später erneut unter Verwendung von Fluid F1 und/oder F2 zu entfernen. Daher markiert der Computer 50 in Block 560 diese Region, sodass diese während nachfolgendes Schmutzprüfungen (z. B. solche wie in Block 505 erörtert) ignoriert wird. Nach Block 560 fährt der Prozess mit Block 570 fort.
-
In Block 570 kann der Computer 50 einen diagnostischen Fehlercode (DTC) oder eine andere geeignete Art von diagnostischer Anzeige erzeugen. Der Computer 50 kann den DTC im Computerspeicher 64 speichern und letztendlich dieses DTC an einen Benutzer des Fahrzeugs 12, an autorisiertes Wartungspersonal oder dergleichen berichten. Berichte an den Benutzer können ein Bereitstellen eines sichtbaren und/oder hörbaren Alarms an den Benutzer innerhalb der Kabine, über ein mobiles Gerät oder dergleichen beinhalten. Berichte an autorisiertes Wartungspersonal können es dem Personal ermöglichen, den Schmutz 80 zu lokalisieren und zu entfernen. Ferner können diese Berichte Wartungspersonal beim Identifizieren, dass der angebliche Schmutz stattdessen ein Schaden (z. B. ein Splitter oder Riss im Fenster 42) ist, unterstützen.
-
Andere Beispiele des Prozesses 500 sind ebenfalls möglich. Gemäß einem nicht beschränkenden Beispiel kann der Computer 50 unter Verwendung von Sensor S1 eine Umgebungstemperatur des Fahrzeugs bestimmen (z. B. eine Fahrzeugaußentemperatur). Wenn der Sensor S1 angibt, dass die Temperatur unter einem Schwellenwert (z. B. 5 °C) liegt, dann kann der Computer 50 in Prozess 500 das Fluid F1 und/oder F2, das an den entsprechenden Sensor 16, 18, 32 bereitgestellt wird, erwärmen.
-
Gemäß einem anderen Beispiel kann der Prozess 500 das erste Fluid F1 auf die Sensoren 16, 18, 32 unabhängig von dem Regenratenparameter auftragen. Danach kann der entsprechende Sensor erneut geprüft werden (z. B. in Block 525), und wenn der Schmutz 80 nicht von dem entsprechenden Sensor entfernt ist, kann dass das zweite Fluid F2 aufgetragen werden (z. B. unter der Voraussetzung des Nichtvorhandenseins der Ausführung einer Kollisionsvermeidungsanweisung oder der geringen Wahrscheinlichkeit, dass eine Kollisionsvermeidungsanweisung innerhalb des vorbestimmten Zeitintervalls initiiert wird). Somit ist ein autonomes Fahrsystem für ein Fahrzeug beschrieben worden. Das System beinhaltet ein Sensorreinigungssystem, das dazu verwendet werden kann, Schmutz von einem oder mehreren Sensoren an Bord des Fahrzeugs zu entfernen. Diese Sensoren können dazu verwendet werden, Bildgebungsdaten bereitzustellen, z. B. verwendet durch das autonome Fahrsystem, um Fahrzeugbewegung zu navigieren und zu steuern. Das Reinigungssystem beinhaltet einen Computer, der unter anderem dazu programmiert ist, ein Vorhandensein des Schmutzes zu bestimmen und zu bestimmen, ob ein erstes Fluid oder ein zweites Fluid aufzutragen ist. In einem Beispiel kann das erste Fluid ein Gas sein und das zweite Fluid kann eine Flüssigkeit sein.
-
Im Allgemeinen können die beschriebenen Rechensysteme und/oder -vorrichtungen ein beliebiges aus einer Reihe von Computerbetriebssystemen einsetzen, einschließlich unter anderem Versionen und/oder Varianten der SYNC®-Anwendung von Ford, AppLink/Smart Device Link Middleware, der Betriebssysteme Microsoft® Automotive, Microsoft Windows®, Unix (z. B. das Betriebssystem Solaris®, vertrieben durch die Oracle Corporation in Redwood Shores, Kalifornien), AIX UNIX, vertrieben durch International Business Machines in Armonk, New York, Linux, Mac OSX und iOS, vertrieben durch die Apple Inc. in Cupertino, Kalifornien, BlackBerry OS, vertrieben durch Blackberry Ltd. in Waterloo, Kanada, und Android, entwickelt von Google Inc. und der Open Handset Alliance, oder der Plattform QNX® CAR für Infotainment, angeboten von QNX Software Systems. Beispiele für Rechenvorrichtungen beinhalten unter anderem einen fahrzeuginternen Fahrzeugcomputer, einen Arbeitsplatzcomputer, einen Server, einen Desktop-, einen Notebook-, einen Laptop- oder tragbaren Computer oder ein anderes Rechensystem und/oder eine andere Rechenvorrichtung.
-
Rechenvorrichtungen schließen im Allgemeinen computerausführbare Anweisungen ein, wobei die Anweisungen durch eine oder mehrere Rechenvorrichtungen ausgeführt werden können, wie etwa durch die vorstehend aufgeführten. Computerausführbare Anweisungen können von Computerprogrammen zusammengestellt oder ausgewertet werden, die unter Verwendung einer Vielzahl von Programmiersprachen und/oder -technologien erstellt wurden, einschließend unter anderem und entweder für sich oder in Kombination Java™, C, C++, Visual Basic, Java Script, Perl etc. Einige dieser Anwendungen können auf einer virtuellen Maschine zusammengestellt und ausgeführt werden, wie beispielsweise der Java Virtual Machine, der Dalvik Virtual Machine oder dergleichen. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen, z. B. von einem Speicher, einem computerlesbaren Medium etc., und führt diese Anweisungen aus, wodurch er einen oder mehrere Prozesse durchführt, darunter einen oder mehrere der hier beschriebenen Prozesse. Solche Anweisungen und andere Daten können unter Verwendung einer Vielzahl von computerlesbaren Medien gespeichert und gesendet werden.
-
Ein computerlesbares Medium (auch als prozessorlesbares Medium bezeichnet) beinhaltet ein beliebiges nichttransitorisches (z. B. physisches) Medium, das an der Bereitstellung von Daten (z. B. Anweisungen) beteiligt ist, die von einem Computer (z. B. von einem Prozessor eines Computers) gelesen werden können. Ein derartiges Medium kann viele Formen annehmen, darunter unter anderem nichtflüchtige Medien und flüchtige Medien. Nichtflüchtige Medien können zum Beispiel Bild- oder Magnetplatten und sonstige dauerhafte Speicher einschließen. Flüchtigen Medien können zum Beispiel einen dynamischen Direktzugriffsspeicher (DRAM) einschließen, der in der Regel einen Hauptspeicher darstellt. Derartige Anweisungen können durch ein oder mehrere Übertragungsmedien übertragen werden, die Koaxialkabel, Kupferdraht und Glasfaser beinhalten, welche die Drähte beinhalten, die einen an einen Prozessor eines Computers gekoppelten Systembus umfassen. Gängige Formen computerlesbarer Medien beinhalten zum Beispiel eine Diskette, eine Folienspeicherplatte, eine Festplatte, ein Magnetband, jedes andere magnetische Medium, eine CD-ROM, eine DVD, jedes andere optische Medium, Lochkarten, Lochstreifen, jedes andere physikalische Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen FLASH-EEPROM, jeden anderen Speicherchip oder jede andere Speicherkassette oder jedes andere Medium, das von einem Computer gelesen werden kann.
-
Datenbanken, Datenbestände oder sonstige Datenspeicher, die hier beschrieben sind, können unterschiedliche Arten von Mechanismen zum Speichern von, Zugreifen auf und Abrufen von unterschiedlichen Arten von Daten einschließen, darunter eine hierarchische Datenbank, eine Gruppe von Dateien in einem Dateisystem, eine Anwendungsdatenbank in einem proprietären Format, ein relationales Datenbankverwaltungssystem (RDBMS) etc. Jeder dieser Datenspeicher ist im Allgemeinen in einer Rechenvorrichtung beinhaltet, welche ein Computerbetriebssystem, wie beispielsweise eines der oben aufgeführten, verwendet, und es wird auf eine oder mehrere mögliche Weisen über ein Netzwerk darauf zugegriffen. Auf ein Dateisystem kann von einem Computerbetriebssystem zugegriffen werden, und es kann in unterschiedlichen Formaten gespeicherte Dateien beinhalten. Ein RDBMS setzt im Allgemeinen die strukturierte Abfragesprache (SQL) zusätzlich zu einer Sprache zum Erstellen, Speichern, Bearbeiten und Ausführen gespeicherter Abläufe ein, wie etwa die vorstehend erwähnte PL/SQL-Sprache.
-
In einigen Beispielen können Systemelemente als computerlesbare Anweisungen (z. B. Software) auf einer oder mehreren Rechenvorrichtungen (z. B. Servern, PCs etc.) umgesetzt sein, die auf diesen zugeordneten computerlesbaren Medien (z. B. Platten, Speichern etc.) gespeichert sind. Ein Computerprogrammprodukt kann derartige Anweisungen umfassen, die zum Ausführen der hier beschriebenen Funktionen auf computerlesbaren Medien gespeichert sind.
-
Der Prozessor ist über Schaltkreise, Chips oder andere elektronische Komponenten umgesetzt und kann einen oder mehrere Mikrocontroller, einen oder mehrere feldprogrammierbare Gate-Arrays (FPGAs), einen oder mehrere anwendungsspezifische Schaltkreise (ASICs), einen oder mehrere digitale Signalprozessoren (DSPs), einen oder mehrere kundenintegrierte Schaltkreise etc. beinhalten. Der Prozessor kann dazu programmiert sein, Bildgebungsdaten zu empfangen, Fahrzeugpumpen zu steuern, Fahrzeugheizungen zu steuern etc. Das Verarbeiten der Daten kann Verarbeiten der Videoeingabe oder eines anderen Datenstroms beinhalten, der durch die Sensoren erfasst wird, um die Fahrbahnspur des Host-Fahrzeugs und das Vorhandensein von Zielfahrzeugen zu bestimmen. Wie nachstehend beschrieben, weist der Prozessor die Fahrzeugkomponenten an, gemäß den Sensordaten betätigt zu werden. Der Prozessor kann in eine Steuerung, z. B. eine Steuerung für einen autonomen Modus, integriert sein.
-
Der Speicher (oder die Datenspeichervorrichtung) wird über Schaltkreise, Chips oder andere elektronische Komponenten umgesetzt und kann einen oder mehrere von Festspeicher (ROM), Direktzugriffsspeicher (RAM), Flash-Speicher, elektrisch programmierbare Festspeicher (EPROM), elektrisch programmierbarer und löschbarer Festspeicher (EEPROM), eingebettete Multimediakarten (eMMC), einer Festplatte, oder jeglichen flüchtigen oder nicht flüchtigen Medien etc. beinhalten. Der Speicher kann von den Sensoren gesammelte Daten speichern. Die Offenbarung wurde auf veranschaulichende Weise beschrieben, und es versteht sich, dass die verwendete Terminologie vielmehr der Beschreibung als der Einschränkung dienen soll. In Anbetracht der vorstehenden Lehren sind viele Modifikationen und Variationen der vorliegenden Offenbarung möglich und die Offenbarung kann anders als konkret beschrieben umgesetzt werden.