-
Die vorliegende Erfindung betrifft ein Verfahren zur Bereitstellung einer oder mehrerer Prüffunktionen für ein Fahrzeug durch in einem Gebiet an mehreren Standorten verteilte lokalisierte Recheneinheiten, sowie eine anfordernde Recheneinheit, die dazu eingerichtet ist, eine Prüffunktion anzufordern.
-
Hintergrund der Erfindung
-
Fahrzeuge, die Funktionen automatisch bzw. selbständig ausführen, z.B. autonome oder teil-autonome Fahrzeuge, können Informationen interner Komponenten (etwa von Sensoren und Steuergeräten) sowie Informationen externer Quellen (etwa einer Kommunikationsinfrastruktur oder von Cloud-Diensten) verwenden. Zur Sicherstellung einer korrekten Funktion automatisch ausgeführter Funktionen können die entsprechenden Komponenten periodisch überprüft werden bzw. einer Diagnose unterzogen werden, um Fehler, etwa durch Alterung einer Komponente, zu erkennen. Falls Fehler oder Anomalien erkannt werden, können geeignete Maßnahmen durchgeführt werden, z.B. ein Anpassen von Eingangsparametern.
-
Offenbarung der Erfindung
-
Erfindungsgemäß werden ein Verfahren zur Bereitstellung einer oder mehrerer Prüffunktionen für ein Fahrzeug sowie eine anfordernde Recheneinheit mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.
-
Die Erfindung bedient sich der Maßnahme, eine oder mehrere Prüffunktionen bzw. Diagnosefunktionen für ein Fahrzeug durch in einem geographischen Gebiet an mehreren Standorten verteilte lokalisierte Recheneinheiten bereitzustellen, wobei in den lokalisierten Recheneinheiten Berechnungsinstanzen ausgeführt werden, die jeweils wenigstens eine der Prüffunktionen implementieren, um diese in zugeordneten Teilgebieten bereitzustellen. Bei Anfordern einer bestimmten der Prüffunktionen entsprechend einer Prüfanforderung, wird, wenn sich das Fahrzeug in einem Teilgebiet befindet, in dem die angeforderte Prüffunktion bereitgestellt wird, die angeforderte Prüffunktion entsprechend einer Prüfanforderung in der entsprechenden Berechnungsinstanz aufgerufen, um ein Prüfergebnis zu bestimmen. Demgemäß wird die angeforderte Prüffunktion in einer Berechnungsinstanz aufgerufen, die in einer Recheneinheit an einem Standort, der dem Teilgebiet entspricht, ausgeführt wird. Es kann somit eine räumliche Nähe zwischen dem Fahrzeug und der Recheneinheit erreicht werden, so dass vorteilhafterweise kurze Latenzzeiten erreicht werden, wobei gleichzeitig eine hohe Rechenleistung gewährleistet ist, da diese unabhängig von der Rechenleistung im Fahrzeug ist.
-
Die Berechnungsinstanzen sind bevorzugt Computerprogramme, können jedoch grundsätzlich auch ganz oder teilweise in Hardware implementiert sein, z.B. als ASIC (anwendungsspezifische integrierte Schaltung; englisch: applicationspecific integrated circuit) oder als FPGA (im Feld programmierbare Gatteranordnung; englisch: field-programmable gate array) oder Ähnliches. Auch Kombinationen von Computerprogrammen mit Hardware sind denkbar. Jede Berechnungsinstanz implementiert die Prüffunktion mittels wenigstens eines Algorithmus und ist dazu eingerichtet, wenn sie ausgeführt wird, in Reaktion auf einen Aufruf der Prüffunktion ein Prüfergebnis zu bestimmen. Die Berechnungsinstanzen können z.B. in Form sogenannter Container bereitgestellt sein. Die Berechnungsinstanzen werden in Recheneinheiten des Verbundes von Recheneinheiten ausgeführt. Jede Recheneinheit (z.B. ein Computer oder ein Computersystem) umfasst einen oder mehrere Prozessoren mit jeweils wenigstens einem Prozessorkern, in denen die Berechnungsinstanzen (insbesondere Computerprogramme) ausgeführt werden. Weiter umfasst jede Recheneinheit einen flüchtigen und/oder einen nichtflüchtigen Speicher, in dem insbesondere als Computerprogramm implementierte Berechnungsinstanzen gespeichert werden können. Jede Recheneinheit kann dazu eingerichtet sein, mehrere Berechnungsinstanzen gleichzeitig bzw. parallel auszuführen. Jede Recheneinheit kann als eine bestimmte Hardware (z.B. bestimmte Prozessoren, bestimmte Speicher, usw.) angesehen werden (die für verschiedene Recheneinheiten verschieden sein kann), die eine einheitliche Umgebung für die Ausführung von Berechnungsinstanzen darstellt.
-
Die Prüfanforderung kann einerseits Aufrufparameter der angeforderten Prüffunktion und andererseits weitere Anforderungen umfassen. Weitere Anforderung können beispielsweise eine Antwortzeitanforderung (d.h. maximale Zeitspanne, innerhalb derer das Prüfergebnis vorliegen muss, oder Zeitpunkt, bis zu dem das Prüfergebnis vorliegen muss) oder Anforderungen an die Berechnungsinstanz und/oder die lokalisierte Recheneinheit sein. Letzteres können z.B. Sicherheitsanforderungen oder Integritätsanforderungen an die Berechnungsinstanz bzw. Recheneinheit sein.
-
Insbesondere wird die angeforderte Prüffunktion in einer oder durch eine anfordernde Einheit bzw. anfordernde Recheneinheit angefordert und das Prüfergebnis wird an die anfordernde Recheneinheit übermittelt. Die anfordernde Recheneinheit ist insbesondere eine fahrzeugeigene Recheneinheit des Fahrzeugs, eine der lokalisierten Recheneinheiten und/oder eine entfernte Recheneinheit. Die fahrzeugeigene Recheneinheit kann weiterhin dazu eingerichtet sein, Prüfdaten (die sich auf das Fahrzeug beziehen) zu erfassen und an die Berechnungsinstanz, in der die anfordernde Prüffunktion aufgerufen wird, zu übermitteln. Ist die anfordernde Recheneinheit eine der lokalisierten Recheneinheiten, kann dazu ein von den Berechnungsinstanzen unabhängiges Computerprogramm ausgeführt werden.
-
Weiterhin werden bevorzugt, insbesondere durch die anfordernde Recheneinheit, ein oder mehrere Teilgebiete bestimmt, in welchen die Prüffunktion, die angefordert werden soll, bereitgestellt wird. Alternativ oder zusätzlich kann bestimmt bzw. festgestellt werden, ob die angeforderte Prüffunktion in einem bestimmten Teilgebiet oder in mehreren bestimmten Teilgebieten bereitgestellt wird. Das bestimmte Teilgebiet kann das Teilgebiet sein, in dem sich das Fahrzeug befindet oder in das es in absehbarer Zeit fährt. Analog können die mehreren bestimmten Teilgebiete Teilgebiete sein, durch die eine vorgesehene Fahrstrecke des Fahrzeugs verläuft. Das genannte Bestimmen kann auf verschiedene Weisen erfolgen, wobei auch Kombinationen davon denkbar sind. Z.B. können in der anfordernden Recheneinheit Daten gespeichert sein (etwa in Form einer Tabelle), die spezifizieren, welche Prüffunktionen in welchen Teilgebieten bzw. durch welche der lokalisierten Recheneinheiten bereitgestellt werden. Ebenso können solche Daten in einer entfernten Recheneinheit (z.B. ein sogenannter Backend-Server; diese entfernte Recheneinheit kann die gleiche oder eine andere als die entfernte Recheneinheit, die gegebenenfalls die anfordernde Recheneinheit ist, sein) gespeichert sein und die anfordernde Recheneinheit kann diese Daten von der entfernten Recheneinheit abfragen, wobei bei einer entsprechenden Abfrage die augenblickliche Position des Fahrzeugs und/oder die vorgesehene Fahrstrecke berücksichtigt werden, d.h. es werden insbesondere Teilgebiete bestimmt, die sich räumlich in der Nähe des Fahrzeugs bzw. der Fahrstrecke befinden. Auch kann die anfordernde Recheneinheit solche Daten von den lokalisierten Recheneinheiten anfordern (wobei eine lokalisierte Recheneinheit z.B. solche Daten für einen, etwa räumlich benachbarten, Teil der Teilgebiete bzw. lokalisierten Recheneinheiten speichert). Insbesondere kann die anfordernde Recheneinheit von (einer oder mehreren) lokalisierten Recheneinheiten abfragen, welche Prüffunktionen durch die jeweilige Recheneinheit bereitgestellt werden und/oder ob eine bestimmte der Prüffunktionen durch die jeweilige Recheneinheit bereitgestellt wird. Letzteres ist insbesondere dann von Vorteil, wenn gespeicherte Daten nicht mehr aktuell sind oder in einer lokalisierten Recheneinheit eine Fehlfunktion auftritt, so dass eine ursprünglich in einem Teilgebiet bereitgestellte Prüffunktion in diesem Teilgebiet nicht mehr verfügbar ist.
-
Bevorzugt umfasst das Verfahren ein Auswählen der Fahrstrecke oder Ändern einer vorgesehenen Fahrstrecke in Abhängigkeit von der angeforderten Prüffunktion und/oder der Prüfanforderung. Dadurch wird eine Anpassung der Fahrstrecke ermöglicht, wenn sich das Fahrzeug nicht in einem Teilgebiet befindet, in dem die angeforderte Prüffunktion bereitgestellt wird.
-
Bevorzugt ist vorgesehen, wenn sich das Fahrzeug nicht in einem Teilgebiet befindet, in dem die angeforderte Prüffunktion bereitgestellt wird, dass die Fahrstrecke so gewählt oder geändert wird, dass sie durch ein Teilgebiet führt, in dem die angeforderte Prüffunktion bereitgestellt wird. Dabei erfolgt das Aufrufen der angeforderten Prüffunktion, sobald oder während das Teilgebiet, in dem die angeforderte Prüffunktion bereitgestellt wird, erreicht wird bzw. ist. Diese Ausgestaltung ist insbesondere dann von Vorteil, wenn bestimmte Prüffunktionen eine bestimmte Umgebung (z.B. Straßeneigenschaft) voraussetzen, da die Fahrstrecke dann entsprechend gewählt bzw. geändert werden kann. Ob die angeforderte Prüffunktion in einem Teilgebiet bereitgestellt wird, kann beispielsweise wie vorstehend beschrieben festgestellt bzw. bestimmt werden.
-
Bevorzugt schließt die Prüfanforderung eine Antwortzeitanforderung ein. Dabei wird, wenn sich das Fahrzeug nicht in einem Teilgebiet befindet, in dem die angeforderte Prüffunktion bereitgestellt wird, und/oder wenn die vorgesehene Fahrstrecke durch ein Teilgebiet führt, in dem die angeforderte Prüffunktion bereitgestellt wird, die Antwortzeitanforderung jedoch nicht eingehalten werden kann, die Fahrstrecke so gewählt bzw. geändert, dass die Fahrstrecke durch ein Teilgebiet führt, in dem die angeforderte Prüffunktion bereitgestellt wird und die Antwortzeitanforderung eingehalten werden kann. Dabei erfolgt das Aufrufen der angeforderten Prüffunktion, sobald oder während das Teilgebiet, in dem die angeforderte Prüffunktion bereitgestellt wird und die Antwortzeitanforderung eingehalten werden kann, erreicht wird bzw. ist. Diese Ausgestaltung ist vorteilhaft, um zu gewährleisten, dass Eigenschaften oder der Zustand des Fahrzeugs oder von Komponenten desselben, die regelmäßig oder zu bestimmten Zeitpunkten übergeprüft werden müssen, um mögliche Fehlfunktionen oder Schäden des Fahrzeugs frühzeitig zu erkennen, auch tatsächlich rechtzeitig überprüft werden.
-
Bevorzugt umfasst das Verfahren ein Auswählen der Fahrstrecke oder Ändern einer vorgesehenen Fahrstrecke in Abhängigkeit vom Prüfergebnis. Wenn anhand des Prüfergebnisses erkannt wird, ob oder ob nicht das Fahrzeug bestimmte, durch die jeweilige Prüffunktion geprüfte Eigenschaften aufweist oder Bedingungen erfüllt, kann die Fahrstrecke entsprechend gewählt oder geändert werden, so dass beispielsweise, falls die Eigenschaften nicht vorliegen bzw. die Bedingungen nicht erfüllt sind, eine Fahrstrecke gewählt wird, die um einen bestimmten Bereich, in dem die Eigenschaften bzw. Bedingungen notwendig sind, herumführt.
-
Bevorzugt sind eine Ausdehnung und/oder eine Form wenigstens eines der Teilgebiete von der Prüffunktion, die in diesem Teilgebiet bereitgestellt wird, abhängig. Dies ist zweckmäßig, da so Anforderung der Prüffunktion, z.B. Latenzzeitanforderungen berücksichtigt werden können.
-
Bevorzugt werden beim Aufrufen der angeforderten Prüffunktion Prüfdaten als Aufrufparameter der angeforderten Prüffunktion übermittelt. Prüfdaten sind z.B. Sensordaten oder Ähnliches, anhand derer die angeforderte Prüffunktion den Zustand oder die Eigenschaften des Fahrzeugs und/oder von Komponenten des Fahrzeugs bestimmt.
-
Eine erfindungsgemäße anfordernde Recheneinheit ist dazu eingerichtet (insbesondere programmtechnisch bzw. unter Ausführung entsprechender Computerprogramme), ein erfindungsgemäßes Verfahren auszuführen, insbesondere zu bestimmen, ob sich ein Fahrzeug in einem Teilgebiet befindet, in dem eine angeforderte Prüffunktion bereitgestellt ist, wobei eine oder mehrere Prüffunktionen durch in einem Gebiet an mehreren Standorten verteilte lokalisierte Recheneinheiten bereitgestellt werden, und, wenn sich das Fahrzeug in einem Teilgebiet befindet, in dem die angeforderte Prüffunktion bereitgestellt wird, die angeforderte Prüffunktion entsprechend einer Prüfanforderung in einer Berechnungsinstanz, die die Prüffunktion in dem Teilgebiet bereitstellt, aufzurufen, um ein Prüfergebnis zu bestimmen.
-
Auch die Implementierung eines erfindungsgemäßen Verfahrens in Form eines Computerprogramms oder Computerprogrammprodukts mit Programmcode zur Durchführung aller Verfahrensschritte ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Schließlich ist ein maschinenlesbares Speichermedium vorgesehen mit einem darauf gespeicherten Computerprogramm wie oben beschrieben. Geeignete Speichermedien bzw. Datenträger zur Bereitstellung des Computerprogramms sind insbesondere magnetische, optische und elektrische Speicher, wie z.B. Festplatten, Flash-Speicher, EEPROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich. Ein solcher Download kann dabei drahtgebunden bzw. kabelgebunden oder drahtlos (z.B. über ein WLAN-Netz, eine 3G-, 4G-, 5G- oder 6G-Verbindung, etc.) erfolgen.
-
Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.
-
Die Erfindung ist anhand von Ausführungsbeispielen in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung beschrieben.
-
Figurenliste
-
- 1 zeigt beispielhafte in einem Gebiet verteilte Recheneinheiten, in den Berechnungsinstanzen ausgeführt werden, um Prüffunktionen in Teilgebieten bereitzustellen, und ein Fahrzeug.
- 2 zeigt ein Ablaufdiagramm gemäß einer bevorzugten Ausführungsform der Erfindung.
-
Ausführungsform(en) der Erfindung
-
1 zeigt einen beispielhaften Verbund von Recheneinheiten 41, 42, 43, 44, 45, in denen Berechnungsinstanzen 8 ausgeführt werden, um Prüffunktionen D1 bis D7 in Teilgebieten bereitzustellen. Weiterhin ist ein Fahrzeug 2 gezeigt, dessen Funktion bzw. Funktionalitäten durch die Prüffunktionen je nach Bedarf geprüft werden sollen. Im Allgemeinen stellt der Verbund von Recheneinheiten bzw. die Berechnungsinstanzen Prüffunktionen für eine Vielzahl von Fahrzeugen bereit. Gezeigt sind mehrere geographisch lokalisierte (sich an einem bestimmten Standort befindliche) Recheneinheiten 41, 42, 43, 44, 45, z.B. sogenannte Edge-Server. Statt des Ausdrucks „lokalisierte Recheneinheit“ wird im Weiteren auch vereinfacht der Ausdruck „Recheneinheit“ verwendet, soweit klar ist, dass es sich um eine der lokalisierten Recheneinheiten handelt.
-
1 stellt, ähnlich einer Karte, ein geographisches Gebiet 20 dar, durch das beispielhaft Wege 22, 24 führen, auf denen sich das Fahrzeug bewegen kann. Die lokalisierten Recheneinheiten 41, 42, 43, 44, 45 sind vorteilhafterweise räumlich verteilt, an verschiedenen Standorten in dem Gebiet 20 angeordnet, so dass sich Fahrzeuge, die bereitgestellte Prüffunktionen anfordern, mit hoher Wahrscheinlichkeit in der Nähe einer lokalisierten Recheneinheit befinden, so dass eine geringe Latenz bzw. geringe Signallaufzeiten bei der Datenkommunikation erreicht werden, wodurch es möglich wird, zeitkritische Prüffunktionen von einer fahrzeugeigenen Recheneinheit (z.B. einer Steuerung bzw. einem Steuergerät des Fahrzeugs 2) in den Verbund von Recheneinheiten zu verlagern. Die lokalisierten Recheneinheiten 41, 42, 43, 44, 45 sind also vom Fahrzeug getrennte (entfernte) Recheneinheiten, denen jeweils ein Ort bzw. Standort zu gewiesen werden kann, d.h. sie sind aus Sicht des Fahrzeugs lokalisiert. Vorzugsweise befinden sich die lokalisierten Recheneinheiten 41, 42, 43, 44, 45 am Rand (Edge) eines Kommunikationsnetzwerks, das direkt mit den Fahrzeugen in Verbindung steht, d.h. das mittels entsprechenden Kommunikationsschnittstellen mit einem Steuergerät (fahrzeugeigene Recheneinheit) des Fahrzeugs in Verbindung steht. Typischerweise ist das Kommunikationsnetzwerk ein Mobilfunknetzwerk, z.B. ein 4G- oder 5G-Netzwerk. Die lokalisierten Recheneinheiten 41, 42, 43, 44, 45 können im Falle eines Mobilfunknetzwerk in der Nähe von Basisstationen und/oder in der Nähe von Gateways, die die Basisstationen mit dem Kernnetz des Mobilfunknetzwerks verbinden, angeordnet werden, so dass eine lokalisierte Recheneinheit einer oder mehreren Funkzellen zugeordnet werden kann. An einem Ort bzw. Standort können sich mehrere verschiedene Recheneinheiten befinden.
-
Das Fahrzeug 2 verfügt beispielsweise über eine Steuerung bzw. ein Steuergerät, d.h. eine teilnehmereigene Recheneinheit, und ein damit verbundenes Mobilfunk-Endgerät, so dass das Steuergerät über eine Mobilfunkverbindung mit Recheneinheiten des Verbundes von Recheneinheiten Daten kommunizieren kann. Insbesondere kann das Fahrzeug 2 so durch den Verbund von Recheneinheiten bereitgestellte Prüfunktionen anfordern und/oder Prüfdaten, die von Prüffunktionen benötigt werden, übertragen.
-
Bei den Berechnungsinstanzen 8 (beispielsweise in einer der Recheneinheiten 41, 42, 43, 44, 45 symbolisch eingezeichnet) handelt es sich im Prinzip um in den Recheneinheiten ausgeführte Software bzw. Computerprogramme und/oder Hardware (z.B. als ASIC oder FPGA), die jeweils wenigstens einen Algorithmus implementieren, um Prüffunktionen bereitzustellen. D.h. eine bestimmte Prüffunktion kann in einer Berechnungsinstanz 8, die diese implementiert, aufgerufen werden (unter Übergabe jeweiliger Aufrufparameter und/oder Prüfdaten, soweit die Prüffunktion diese benötigt), um jeweils wenigstens ein Prüfergebnis (z.B. durch jeden Algorithmus) zu bestimmen, das an den Aufrufer bzw. das aufrufende Element zurückgegeben wird.
-
Der Begriff „Prüffunktion“ ist in einem allgemeinen Sinn als Funktion zu verstehen, d.h. als Abbildung von Eingabewerten bzw. Aufrufparametern auf Ausgabewerte bzw. Prüfergebnisse, etwa mittels Berechnungen. Prüffunktionen überprüfen dabei (z.B. sind sie entsprechend programmiert bzw. implementiert) anhand von erfassten Prüfdaten bestimmte Eigenschaften, Bedingungen, Funktionalitäten oder einen Zustand des Fahrzeugs oder von Fahrzeugkomponenten und geben ein entsprechendes Ergebnis bzw. Prüfergebnis zurück, das anzeigt ob oder inwiefern geprüfte Eigenschaften, Bedingungen, Funktionalitäten gegeben sind und/oder das den geprüften (augenblicklichen) Zustand anzeigt. Eingabewerte, insbesondere Prüfdaten, können z.B. Sensordaten, Zustandsdaten des Fahrzeugs bzw. von Komponenten des Fahrzeugs, aus Sensordaten und/oder Zustandsdaten abgeleitete Daten (z.B. durch eine fahrzeugeigene Recheneinheit verarbeitete Sensor- und/oder Zustandsdaten), und/oder Ähnliches sein. Sensordaten und/oder Zustandsdaten betreffen beispielsweise bestimmte, zu prüfende Komponenten des Fahrzeugs. Es kann sein, dass eine Prüfunktion auf verschiedene Weisen implementiert ist, d.h. mittels verschiedener Algorithmen, die im Allgemeinen unterschiedliche Prüfergebnisse liefern, wobei, falls die Algorithmen korrekt implementiert sind und fehlerfrei ausgeführt werden, die Prüfergebnisse nur wenig oder gar nicht voneinander abweichen, d.h. innerhalb bestimmter Toleranzen gleich sind. Ein Beispiel ist die Auswertung von Sensor- und/oder Zustandsdaten einer Komponente des Fahrzeugs, z.B. eines Motors eines Automobils, um zu prüfen, ob diese Komponente korrekt funktioniert. Ebenso kann, insbesondere bei autonomen oder teil-autonomen Fahrzeugen, geprüft werden, ob das Fahrzeug bzw. dessen Steuerung bestimmte Eigenschaften aufweist bzw. bestimmte Bedingungen erfüllt.
-
Jede der Berechnungsinstanzen stellt die von ihr implementierte Prüffunktion in einem Teilgebiet 51, 52, 53, 54, 55 des Gebiets 20 bereit. Das Teilgebiet, in dem eine Prüffunktion von einer Berechnungsinstanz bereitgestellt wird, basiert auf dem Standort der Recheneinheit 4, in der die Berechnungsinstanz ausgeführt wird. In der Figur sind Teilgebiete 51, 52, 53, 54, 55 als gestrichelte Linien eingezeichnet. Die Teilgebiete 51, 52, 53, 54, 55 sind der Einfachheit halber kreisförmig bzw. teilkreisförmig und mit gleichem Durchmesser eingezeichnet; im Allgemeinen können unterschiedliche Formen und unterschiedliche Abmessungen auftreten. Die Teilgebiete 51, 52, 53, 54, 55 schließen den Standort der jeweiligen Recheneinheit typischerweise ein. Werden in einer Recheneinheit mehrere Berechnungsinstanzen ausgeführt, die verschiedene Prüffunktionen implementieren, können den verschiedenen Prüffunktionen verschiedene (mit verschiedenen Abmessungen und/oder verschiedenen Formen) Teilgebiete zugeordnet sein (nicht gezeigt). Dies kann beispielsweise dann der Fall sein, wenn Prüffunktionen verschiedene Latenzzeitanforderungen bzw. Antwortzeitanforderung aufweisen. Muss das Prüfergebnis einer Prüffunktion innerhalb einer kurzen Zeit vorliegen, ist das Teilgebiet entsprechend kleiner (z.B. im obigen Beispiel eine einzelne Funkzelle) als bei einer Prüffunktion, für die das Prüfergebnis erst nach einer längeren Zeit vorliegen muss (z.B. mehrere Funkzellen).
-
In 1 sind in den (lokalisierten) Recheneinheiten 41, 42, 43, 44, 45 Berechnungsinstanzen 8 eingezeichnet (nur für die Recheneinheit 43 stellvertretend mit Bezugszeichen versehen), die Prüffunktionen D1, D2, D3, D4, D5, D6, D7 implementieren. Es kann, wie gezeigt, vorgesehen sein, dass jeweils nur eine Teilmenge aller möglichen Prüffunktionen durch die Berechnungsinstanzen, die in einer einzelnen Recheneinheit ausgeführt werden, implementiert werden. Dies kann von verschiedenen Faktoren abhängig sein. Ein Faktor sind Hardwareanforderungen; so verfügt eine einzelne Recheneinheit im Allgemeinen nicht über ausreichende Rechenressourcen, um Berechnungsinstanzen für alle möglichen Prüffunktionen auszuführen. Ebenso können bestimmte Prüffunktionen spezielle Hardwarekomponenten benötigen, die nicht in allen Recheneinheiten vorhanden sind. Ein weiterer Faktor kann sein, dass bestimmte Prüffunktionen eine bestimmte geographische Umgebung, d.h. Gestaltung bzw. Eigenschaften des Fahrstreckenabschnitts, in dem Prüfdaten gesammelt werden, benötigen, z.B., dass der Fahrstreckenabschnitt eine bestimmte Geschwindigkeit zulässt oder eine bestimmte Steigung aufweist. Berücksichtigt kann auch werden, wie häufig oder mit welcher Antwortzeitanforderung eine bestimmte Prüfunktion angefordert wird.
-
Beispielsweise führt in der Figur eine Recheneinheit 41 Berechnungsinstanzen aus, die Prüffunktionen D1, D2, D7 implementieren, eine Recheneinheit 42 Berechnungsinstanzen aus, die die Prüffunktionen D1, D3 implementieren, eine Recheneinheit 43 Berechnungsinstanzen aus, die die Prüffunktionen D2, D4 implementieren, eine Recheneinheit 44 Berechnungsinstanzen aus, die die Prüffunktionen D3, D6 implementieren, und eine Recheneinheit 45 Berechnungsinstanzen aus, die die Prüffunktionen D4, D5, D7 implementieren.
-
Das Fahrzeug 2 fährt etwa von links nach rechts durch das Gebiet 20, wobei verschiedene Straßen bzw. Wege 22, 24 gewählt werden können. Die Ausführung einer bestimmten der Prüfunktionen D1, D2, D3, D4, D5, D6, D7 kann veranlasst werden, wenn sich das Fahrzeug 2 in einem Teilgebiet 51, 52, 53, 54, 55 befindet, in dem die jeweilige Prüffunktion durch eine Berechnungsinstanz implementiert wird, d.h. in dem Teilgebiet bereitgestellt wird.
-
Es kann vorkommen, dass festgestellt wird, etwa durch ein Steuergerät des Fahrzeugs bzw. allgemeiner durch eine anfordernde Einheit, dass eine Zeitanforderung, bis zu der eine bestimmte Prüffunktion spätestens durchgeführt sein muss, nur eingehalten werden kann, wenn eine bestimmte Fahrstrecke gewählt wird. In diesem Fall wird vorzugsweise die Fahrstrecke so gewählt bzw. geändert, dass das Fahrzeug rechtzeitig durch ein Teilgebiet, in dem die Prüffunktion bereitgestellt wird, fährt, um die Zeitanforderung einhalten zu können. In der Figur wird beispielsweise die Prüffunktion D4 lediglich durch Berechnungsinstanzen in den Recheneinheiten 43, 45 implementiert bzw. in den Teilgebieten 53, 55 bereitgestellt, wobei beispielsweise (ausgehend von der eingezeichneten Position des Fahrzeugs) die Zeitanforderung nicht eingehalten werden kann, wenn der untere Weg 22 gewählt wird, da das Teilgebiet 55 zu spät erreicht wird, sondern nur auf dem oberen Weg 24 eingehalten werden kann, da das Teilgebiet 53 rechtzeitig erreicht wird. Entsprechend wird der obere Weg 24 gewählt bzw., wenn der untere Weg 22 der eigentlich beabsichtigte ist, wird dieser in den oberen Weg 24 geändert.
-
Ähnlich kann verfahren werden, wenn eine bestimmte Prüffunktion D6 bestimmte Anforderungen an die Ausgestaltung (z.B. Steigung, mögliche Geschwindigkeit) des Fahrstreckabschnitts stellt, der durch das Teilgebiet, in dem diese bereitgestellt ist, verläuft. Im dargestellten Gebiet 20 bietet etwa nur das Teilgebiet 54 eine geeignete Umgebung. Auch hier wird bevorzugt die Fahrstrecke so gewählt bzw. geändert, dass sie durch das jeweilige Teilgebiet verläuft. D.h. im gezeigten Beispiel der 1 wird der obere Weg 24 statt dem unteren Weg 22 gewählt.
-
Ein weiterer Fall, in dem vorzugsweise eine Beeinflussung der Fahrstrecke erfolgt, ist, wenn ein bestimmter Bereich 26 nur von Fahrzeugen befahren werden darf, die bestimmte Eigenschaften bzw. Bedingungen erfüllen, die durch die Prüffunktion D7 geprüft werden. Ein Bereich 26, in den nur Fahrzeuge mit bestimmten Eigenschaften einfahren dürfen, kann z.B. für autonome Fahrzeuge oder Lastwagen vorgesehen sein, wobei zusätzlich die Tageszeit bzw. Uhrzeit berücksichtigt werden kann. Ein Beispiel für einen entsprechenden Bereich 26 wäre etwa ein Bereich, in dem sich Schulen befinden (oder andere Bereiche, in denen sich komplexe Verkehrssituationen ergeben können bzw. erhöhte Sicherheitsanforderungen bestehen), so dass z.B. autonome Fahrzeuge nur einfahren dürfen, wenn deren automatische Steuerung besondere Eigenschaften aufweisen bzw. Bedingungen erfüllt. In der 1 ist entsprechend die Prüffunktion D7 an beiden Seiten des Bereichs 26 in zwei Teilgebieten 51, 55 bereitgestellt. Für Fahrzeuge, die die Eigenschaften nicht mittels der Prüffunktion D7 nachweisen können, wird der obere Weg 24, der nicht durch den Bereich führt, gewählt. Insbesondere wird sogenanntes Geofencing ermöglicht.
-
Die Anforderung einer Prüffunktion wird durch eine anfordernde Einheit veranlasst. Die anfordernde Einheit kann das Fahrzeug selbst (d.h. durch eine fahrzeugeigene Recheneinheit) und/oder eine fahrzeugexterne Recheneinheit sein. In jedem Fall werden Prüfdaten, die von der Prüffunktion zur Bestimmung des Prüfergebnisses benötigt werden, vom Fahrzeug an die Berechnungsinstanz, die die jeweilige Prüffunktion implementiert und durch die die Prüfanforderung beantwortet wird, übertragen.
-
Bei einer Anforderung der Prüffunktion durch eine fahrzeugexterne Recheneinheit, sind die Fälle möglich, dass die Anforderung durch die Berechnungsinstanz, die die jeweilige Prüffunktion implementiert, und/oder durch die Recheneinheit (d.h. durch ein entsprechendes Computerprogramm), in der diese Berechnungsinstanz ausgeführt wird, automatisch veranlasst wird, sobald sich das Fahrzeug im jeweiligen Teilgebiet befindet. Dies kann der Fall sein, wenn ein Bereich 26 vom Fahrzeug 2 nur befahren werden darf, wenn bestimmte Eigenschaften bzw. Bedingungen erfüllt sind, die wie vorstehend beispielhaft erläutert durch eine entsprechende Prüffunktion D7 geprüft werden.
-
Die fahrzeugexterne Recheneinheit kann auch eine entfernte Recheneinheit 6, z.B. ein sogenannter Cloud-Server, sein. Im Unterschied zu den lokalisierten Recheneinheiten 41, 42, 43, 45 ist die entfernte Recheneinheit 6 eine Recheneinheit (oder mehrere Recheneinheiten), die sich an einem an sich unbestimmten Ort befindet. Die Datenkommunikation zur entfernten Recheneinheit erfolgt beispielsweise zunächst über das Mobilfunknetzwerk, mit dem das Fahrzeug direkt Verbindung aufnimmt, und anschließend über ein weiteres Datenkommunikationsnetzwerk, wie etwa das Internet, das die Datenkommunikation über große Entfernungen ermöglicht. Die Signallaufzeiten bei der Datenkommunikation zwischen einem Fahrzeug 2 und der entfernten Recheneinheit 6 sind im Allgemeinen deutlich länger als Signallaufzeiten zwischen dem Fahrzeug 2 und lokalisierten Recheneinheiten 4 (letztere können z.B. einige Millisekunden betragen, während erstere um einen Faktor 10 größer sein können). Durch die entfernte Recheneinheit 6 können Prüfergebnisse gespeichert und/oder einer weitergehenden Analyse unterzogen werden, z.B. um den Zustand des Fahrzeugs bzw. den Zustand von Komponenten zu bestimmen und etwa Alterungs- oder Verschleißprozesse der Komponenten zu erkennen.
-
2 zeigt ein Ablaufdiagramm gemäß einer bevorzugten Ausführungsform der Erfindung. Es ist ein beispielhafter Ablauf gezeigt, in dem (im Allgemeinen mehrere) Prüffunktionen durch lokalisierte Recheneinheiten, d.h. an bestimmten Standorten innerhalb eines Gebiets befindliche Recheneinheiten (vgl. 1), bereitgestellt sind.
-
In Schritt 110 (der dauerhaft, während der weiteren Schritte ausgeführt wird) werden Berechnungsinstanzen in den lokalisierten Recheneinheiten, ausgeführt. In jeder lokalisierten Recheneinheit werden eine oder mehrere der Berechnungsinstanzen ausgeführt, wobei jede Berechnungsinstanz eine der Prüffunktionen implementiert und dazu eingerichtet ist, in Reaktion auf einen Aufruf der von der Berechnungsinstanz implementierten Prüffunktion ein Ergebnis zu bestimmen. Jede der Prüffunktionen ist in wenigstens einer bzw. durch wenigstens eine der Berechnungsinstanzen implementiert. Entsprechend kann jede Prüffunktion in einer oder mehreren implementiert sein, muss aber nicht in jeder der Berechnungsinstanzen implementiert sein. Jeder Berechnungsinstanz wird bzw. ist ein Teilgebiet zugeordnet, in dem die Prüffunktion, die durch die Berechnungsinstanz implementiert wird, bereitgestellt wird. Die Zuordnung des Teilgebiets erfolgt in Abhängigkeit von dem Standort der lokalisierten Recheneinheit.
-
In Schritt 120 erfolgt ein Anfordern einer bestimmten (als angeforderte Prüffunktion bezeichnete) der Prüffunktionen entsprechend einer Prüfanforderung. Das Anfordern erfolgt beispielsweise durch eine anfordernde Einheit.
-
Im bevorzugten Schritt 130 wird, wenn sich das Fahrzeug nicht in einem Teilgebiet befindet, in dem die Prüffunktion bereitgestellt, wird die Fahrstrecke des Fahrzeugs so gewählt oder eine vorgesehene Fahrstrecke so geändert, dass sie durch ein Teilgebiet, in dem die Prüffunktion bereitgestellt ist, verläuft. Die Auswahl bzw. Änderung kann insbesondere auch so erfolgen, dass, eine in der Prüfanforderung umfasste Zeitanforderung (d.h. maximale Zeitspanne, innerhalb derer nach dem Anfordern der Prüffunktion das Prüfergebnis zurückgegeben werden muss) eingehalten werden kann.
-
Wenn sich das Fahrzeug in einem Teilgebiet befindet, in dem die angeforderte Prüffunktion bereitgestellt wird, erfolgt in Schritt 140 ein Aufrufen der angeforderten Prüffunktion entsprechend der Prüfanforderung in der Berechnungsinstanz, die die Prüffunktion in dem Teilgebiet bereitstellt, um ein Prüfergebnis zu bestimmen. Dabei werden insbesondere Prüfdaten (Sensordaten, etc.) erfasst und an die Berechnungsinstanz bzw. die Prüffunktion übermittelt. Wenn die Fahrstrecke entsprechend dem optionalen Schritt 130 ausgewählt oder geändert wurde, erfolgt Schritt 140, wenn bzw. nachdem das entsprechende Teilgebiet erreicht ist.
-
In Schritt 150 wird das Prüfergebnis zurückgegeben, insbesondere an die anfordernde Einheit. Im bevorzugten Schritt 160 wird basierend auf dem Prüfergebnis die Fahrstrecke gewählt und/oder eine vorgesehene Fahrstrecke geändert, beispielsweise, wenn, wie im Zusammenhang mit 1 erläutert, das Fahrzeug bestimmte Eigenschaften aufweisen oder Bedingungen erfüllen muss, um in einen bestimmten Bereich fahren zu dürfen.