DE112017001723T5 - Ermöglichen von automatischer sensorerkennung in autonomen vorrichtungen - Google Patents

Ermöglichen von automatischer sensorerkennung in autonomen vorrichtungen Download PDF

Info

Publication number
DE112017001723T5
DE112017001723T5 DE112017001723.8T DE112017001723T DE112017001723T5 DE 112017001723 T5 DE112017001723 T5 DE 112017001723T5 DE 112017001723 T DE112017001723 T DE 112017001723T DE 112017001723 T5 DE112017001723 T5 DE 112017001723T5
Authority
DE
Germany
Prior art keywords
sensor
sensors
client
sensor information
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112017001723.8T
Other languages
English (en)
Inventor
Tobias Kohlenberg
Ravishankar R. Iyer
James Jin-koo Kim
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hyundai Motor Co
Kia Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112017001723T5 publication Critical patent/DE112017001723T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

Systeme, Einrichtungen und Verfahren zum Ermöglichen einer Sensorerkennung in autonomen Vorrichtungen hierin. Ein beispielhaftes System zum Ermöglichen einer dynamischen Sensorerkennung mit einem Client, der eine autonome Vorrichtung aufweist. Die autonome Vorrichtung ist in der Lage, unter Verwendung von Sensordaten von einem aktuellen Standort zu einem Zielstandort zu navigieren. Der Client stellt eine Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route bereit und empfängt jeweilige Sensorinformationen für jeden von einem Satz ausgewählter Sensoren, die von einem Datenserver basierend auf der Anforderung ausgewählt werden. Der Client abonniert einen Datenfeed eines Sensors des Satzes ausgewählter Sensoren entlang der geplanten Route basierend auf Sensorinformationen, die dem Sensor entsprechen, und der Client analysiert den Datenfeed, um zu bestimmen, ob mit der geplanten Route fortgefahren werden soll.

Description

  • PRIORITÄTSANMELDUNG
  • Diese Anmeldung beansprucht den Vorteil der Priorität der US-Anmeldung Serien-Nr. 15/087,313, eingereicht am 31. März 2016, die hierin durch Bezugnahme in ihrer Gesamtheit aufgenommen ist.
  • HINTERGRUND
  • Herkömmliche autonome Fahrzeuge weisen derzeit die Fähigkeit auf, externe Sensoren zu verwenden, um die Navigation und Routenbestimmung zu unterstützen. Externe Sensoren müssen jedoch statisch definiert sein, um von herkömmlichen autonomen Fahrzeugen verwendet zu werden. Indem gefordert wird, dass externe Sensoren statisch definiert sind, kann ein autonomes Fahrzeug auf einen definierten Kurs begrenzt sein, in dem die externen Sensoren bekannt sind. Das heißt, die statische Definition von Sensoren kann die Fähigkeit eines autonomen Fahrzeugs reduzieren, variable Routen zu nehmen oder zu ungeplanten Zielen zu navigieren.
  • Figurenliste
  • In den Zeichnungen, die nicht notwendigerweise maßstabsgetreu gezeichnet sind, können gleiche Bezugszeichen ähnliche Komponenten in verschiedenen Ansichten beschreiben. Gleiche Bezugszeichen mit unterschiedlichen Buchstabensuffixen können verschiedene Instanzen von ähnlichen Komponenten repräsentieren. Die Zeichnungen veranschaulichen im Allgemeinen beispielhaft, jedoch nicht in beschränkender Weise, verschiedene Ausführungsformen, die im vorliegenden Dokument erörtert werden.
    • 1 veranschaulicht Komponenten eines Systems, um eine dynamische Sensorerkennung gemäß einigen Ausführungsformen zu ermöglichen.
    • 2 veranschaulicht Komponenten eines beispielhaften Systems, um eine dynamische Sensorerkennung gemäß einigen Ausführungsformen zu ermöglichen.
    • 3 veranschaulicht ein Flussdiagramm einer Sensorregistrierung, um eine dynamische Sensorerkennung gemäß einigen Ausführungsformen zu ermöglichen.
    • 4 veranschaulicht ein Flussdiagramm, um eine dynamische Sensorerkennung gemäß einigen Ausführungsformen zu ermöglichen.
    • 5 veranschaulicht ein Verfahren, um eine dynamische Sensorerkennung gemäß einigen Ausführungsformen zu ermöglichen.
    • 6 veranschaulicht ein Verfahren, um eine Sensorregistrierung gemäß einigen Ausführungsformen zu ermöglichen.
  • DETAILLIERTE BESCHREIBUNG
  • Bestimmte Details werden nachstehend dargelegt, um ein ausreichendes Verständnis von Ausführungsformen der Offenbarung zu vermitteln. Jedoch wird für Fachleute auf dem Gebiet offensichtlich sein, dass Ausführungsformen der Offenbarung ohne verschiedene Aspekte dieser speziellen Details umgesetzt werden können. In einigen Fällen wurden wohlbekannte Schaltungen, Steuersignale, Zeitprotokolle, Computersystemkomponenten und Softwareoperationen nicht im Detail gezeigt, um zu vermeiden, dass die beschriebenen Ausführungsformen der Offenbarung unnötigerweise unklar gemacht werden.
  • Beispiele von hierin beschriebenen Sensorerkennungssystemen können eine dynamische Sensorerkennung in autonomen Vorrichtungen ermöglichen. Autonome Vorrichtungen können in der Lage sein, eine Umgebung zwischen einem aktuellen Standort und einem Zielstandort ohne menschliche Eingabe zu routen und zu navigieren, indem On-Board-Sensoren und externe Sensoren entlang geplanter Routen verwendet werden. Die autonome Vorrichtung kann Sensorinformationen von einem Datenserver anfordern, und der Datenserver kann Sensorinformationen bereitstellen, die einem Satz von Sensoren entsprechen, die aus einer Datenbank von Sensoren basierend auf dem Standort der autonomen Vorrichtung und dem Zielstandort ausgewählt werden. Der Datenserver kann einen Datenbankeintrag mit entsprechenden Sensorinformationen für jeden einer Mehrzahl von Sensoren speichern und kann die Datenbank nach relevanten Datensatzantworten auf die Anforderung von der autonomen Vorrichtung abfragen. Die autonome Vorrichtung kann ein Roboter, ein Automobil oder ein anderes Fahrzeug sein oder kann eine Handheld-Vorrichtung sein, die in der Lage ist, über ein Netz mit Sensoren und/oder dem zentralen Server zu kommunizieren.
  • 1 veranschaulicht ein Sensorkommunikationssystem (System) 100 gemäß einer Ausführungsform der Offenbarung. Das System 100 kann verwendet werden, um die Sensoren 104(1-M) bei einem Datenserver 120 zu registrieren, und der Datenserver 120 kann Sensorinformationen an einen Client (z. B. Vorrichtung(en), Komponente(n), Schaltung(en), Fahrzeug(e) usw.) von den Clients 102(1-N) in Reaktion auf eine Anforderung vom Client bereitstellen. Jeder der Clients 102(1-N) kann eine autonome Vorrichtung aufweisen, die einen Sendeempfänger und ein computerlesbares Medium (oder mehrere computerlesbare Medien) aufweist, das mit ausführbaren Anweisungen codiert ist, die durch eine oder mehrere Verarbeitungseinheiten (nicht in 1 gezeigt) des Clients 102(1-N) ausführbar sind, um Daten von den Sensoren 104(1-M) oder dem Datenserver 120 zu senden, zu empfangen, zu codieren und/oder zu decodieren, wie beispielsweise eine Anwendung 103(1-N) auf dem jeweiligen Client 102(1-N). In einigen Beispielen kann jeder der Clients 102(1-N) Schnittstellen, Schaltungen und/oder Module (z. B. eine Sensorkommunikationsschnittstelle, eine Serverkommunikationsschnittstelle, ein Hindernisvermeidungsmodul usw.) aufweisen, um Daten von den Sensoren 104(1-M) oder dem Datenserver 120 zu senden, zu empfangen, zu codieren und/oder zu decodieren. Die Schnittstellen oder Module können Anweisungen sein, die auf einem maschinenlesbaren Medium des Clients 102(1-N) gespeichert sind, um durch eine Prozessoreinheit des Clients 102(1-N), eine Schaltung, eine Gleitkomma-Gate-Anordnung, eine anwendungsspezifische integrierte Schaltung, eine andere Hardware des Clients 102(1-N) zum Implementieren des Moduls oder Kombinationen davon ausgeführt zu werden.
  • Jeder der Clients 102(1-N) kann mit einem Netz 110 gekoppelt sein, um Sensorinformationsanforderungen (z. B. unter Verwendung der Serverkommunikationsschnittstelle, die den Sendeempfänger eines autonomen Fahrzeugs des Clients steuert) an den Datenserver 120 und/oder Sensorverbindungsanforderungen an die Sensoren 104(1-M) (z. B. unter Verwendung der Sensorkommunikationsschnittstelle, die den Sendeempfänger eines autonomen Fahrzeugs des Clients steuert) bereitzustellen und um Sensorinformationen (z. B. unter Verwendung der Sensorsteuerschnittstelle, die den Sendeempfänger des Clients steuert) vom Datenserver 120 und/oder Sensorinformationen von den Sensoren 104(1-M) direkt oder über das Netz 110 zu empfangen.
  • Das Netz 110 kann unter Verwendung von einem oder mehreren Netzen implementiert werden, wie beispielsweise Local Area Networks (LANs), Wide Area Networks (WANs), Metropolitan Area Networks (MANs), zellularen Netzen und/oder dem Internet, jedoch nicht darauf beschränkt. Kommunikationen, die zum, vom und innerhalb des Netzes 110 bereitgestellt werden, können verdrahtet und/oder drahtlos sein und können ferner durch beliebige Netzvorrichtungen bereitgestellt werden, die jetzt oder in der Zukunft in der Technik bekannt sind. Vorrichtungen, die über das Netz 110 kommunizieren, können mit einem beliebigen Kommunikationsprotokoll, einschließlich, jedoch nicht darauf beschränkt, TCP/IP, UDP, RS-232 und IEEE 802.11, Long-Term Evolution (LTE) oder erweiterter drahtloser LTE-Kommunikation, oder einem beliebigen anderen zellularen/drahtlosen Kommunikationsstandard kommunizieren.
  • Die Sensoren 104(1-M) können viele verschiedene Typen von Sensoren aufweisen oder können alle homogen sein. Beispiele für Sensortypen können Infrarot, Temperatur, Ton, Video, Temperatur, Geschwindigkeit und Feuchtigkeit umfassen. Jeder der Sensoren 104(1-M) kann bestimmte Eigenschaften aufweisen, wie beispielsweise einen Datentyp (z. B. Format der Daten), einen Standort, eine Orientierung, einen Bereich, Anwendungsprogrammschnittstellen (APIs, Application Program Interfaces), Abfrageschnittstellen, Kanalinformationen oder eine beliebige Kombination davon. Jeder der Sensoren 104(1-M) kann einen Sendeempfänger, eine Serverkommunikationsschnittstelle, eine Vorrichtungskommunikationsschnittstelle, ein Erfassungs- und Datensammlungsmodul oder Kombinationen davon umfassen. Die Schnittstellen oder Module können Anweisungen sein, die auf einem maschinenlesbaren Medium des Sensors 104(1-M) gespeichert sind, um durch eine Prozessoreinheit des Sensors 104(1-M), eine Schaltung, eine Gleitkomma-Gate-Anordnung, eine anwendungsspezifische integrierte Schaltung, eine andere Hardware des Sensors 104(1-M) zum Implementieren des Moduls oder Kombinationen davon ausgeführt zu werden.
  • Als eine zentrale Engine kann der Datenserver 120 Schnittstellen, Module und/oder Schaltungen (z. B. einen Sendeempfänger, eine Sensorkommunikationsschnittstelle, ein Sensorregistrierungsmodul, ein Sensorauswahlmodul, eine Vorrichtungskommunikationsschnittstelle) bereitstellen, verarbeiten und/oder mit diesen kommunizieren, um die Sensoren 104(1-M) zu registrieren (z. B. unter Verwendung der Sensorkommunikationsschnittstelle, die den Sendeempfänger steuert, und des Sensorregistrierungsmoduls), eine Karte der Sensoren 104(1-M) zu erstellen (z. B. unter Verwendung des Sensorauswahlmoduls), Zugriff auf die Sensoren 104(1-M) zu steuern (z. B. unter Verwendung der Vorrichtung oder Sensorkommunikationsschnittstelle, die den Sendeempfänger steuert), und Empfehlungen relevanter Sensoren in Reaktion auf Anforderungen von den Clients 102(1-N) bereitzustellen (z. B. unter Verwendung der Vorrichtungskommunikationsschnittstelle, die den Sendeempfänger steuert). Die Schnittstellen oder Module können Anweisungen sein, die auf dem maschinenlesbaren Medium 123 gespeichert sind, um von den Prozessoreinheiten 121, einer Schaltung, einer Gleitkomma-Gate-Anordnung, einer anwendungsspezifischen integrierten Schaltung, einer anderen Hardware des Datenservers 120 zum Implementieren des Moduls oder Kombinationen davon ausgeführt zu werden. Der Datenserver 120 kann eine oder mehrere Verarbeitungseinheiten 121 und computerlesbare Medien 123 aufweisen. Das computerlesbare Medium 123 kann Anweisungen für ein Sensorerkennungssystem 124 codieren, das eine Sensorkommunikationsschnittstelle, ein Sensorregistrierungsmodul, eine Vorrichtungskommunikationsschnittstelle, ein Sensorauswahlmodul usw. aufweisen kann. Beispielsweise können die Anweisungen für das Sensorerkennungssystem 124 Registrierungsanforderungen über den Sendeempfänger des Datenservers 120 von den Sensoren 104(1-M) empfangen, und in Reaktion auf die Registrierungsanforderungen kann das Sensorregistrierungsmodul einen Eintrag mit Sensorinformationen für jeden der Sensoren 104(1-M) in einer Datenbank erstellen. Die Datenbank kann im Datenspeicher 130 gespeichert sein. Die Sensorinformationen können Datenfeedabonnement-Informationen aufweisen, die mit einem jeweiligen Sensor assoziiert sind, wie beispielsweise einen Sensortyp (z. B. Infrarot, Temperatur, Ton, Video, Temperatur, Geschwindigkeit, Feuchtigkeit), einen Datentyp (z. B. Format der Daten), Standort, Orientierung, Bereich, Anwendungsprogrammschnittstellen (APIs, Application Program Interfaces), Abfrageschnittstellen oder eine beliebige Kombination davon.
  • Die Anweisungen für das Sensorerkennungssystem 124 können auch die Anforderungen von Sensorinformationen von den Clients 102(1-N) empfangen und beantworten. Beispielsweise kann ein Client der Clients 102(1-N) Sensorinformationen vom Datenserver 120 unter Verwendung einer Serverkommunikationsschnittstelle, die den Sendeempfänger der autonomen Vorrichtung steuert, basierend auf z. B. einem aktuellen Standort, einem Zielstandort, einer geplanten Route, einem Sensortyp, einer Sensororientierung, einem Clienttyp usw. anfordern. Das Sensorauswahlmodul kann die Datenbank im Datenspeicher 130 basierend auf der Anforderung abfragen und Sensorinformationen, die mit jedem von einem oder mehreren der Sensoren 104(1-M) assoziiert sind, in Reaktion auf die Anforderung unter Verwendung der Vorrichtungskommunikationsschnittstelle, die den Sendeempfänger des Datenservers steuert, bereitstellen. Die Anweisungen für das Sensorerkennungssystem 124, die auf dem computerlesbaren Medium 123 gespeichert sind, können auf der einen oder den mehreren Verarbeitungseinheiten 121 oder anderen Verarbeitungseinheiten ausgeführt werden.
  • Die Clients 102(1-N) können mit dem Datenserver 120 über das Netz 110 kommunizieren, um Sensorinformationen basierend auf dem aktuellen Standort, dem Zielstandort, dem Clienttyp und/oder einigen anderen Kriterien anzufordern. Die Clients 102(1-N) können eine Route unter Verwendung einer Hindernisvermeidungsschnittstelle basierend auf den Sensorinformationen bestimmen. In einigen Beispielen können die Sensorinformationen Routinginformationen aufweisen. In anderen Beispielen können die Sensorinformationen Datenfeedabonnement-Informationen für einen ausgewählten Satz der Sensoren 104(1-M) aufweisen, die für die Anforderung relevant sind.
  • In einigen Ausführungsformen können Drittserver 150 einen Datenfeed für einen oder mehrere der Sensoren 104(1-M) speichern, und die Sensorinformationen können Anweisungen zum Zugreifen auf den Datenfeed aufweisen, der auf den Drittservern 150 gespeichert ist.
  • Während des Betriebs können der Datenserver 120 und die Sensoren 104(1-M) einen Registrierungsprozess durchführen, wobei Sensorinformationen für jeden der Sensoren 104(1-M) in einem jeweiligen Datenbankeintrag im Datenspeicher 130 gespeichert werden. In einigen Ausführungsformen kann der Registrierungsprozess ein dynamischer Registrierungsprozess sein, wobei jeder Sensor unter Verwendung der Serverkommunikationsschnittstelle, die den Sendeempfänger des Sensors steuert, eine Registrierungsnachricht mit jeweiligen Sensorinformationen an den Datenserver 120 sendet oder auf eine Registrierungsanforderung vom Datenserver 120 mit der Registrierungsnachricht antwortet. Unter Verwendung des Serverregistrierungsmoduls kann der Datenserver 120 einen Datenbankeintrag im Datenspeicher 130 für jeden Sensor 104(1-M) in Reaktion auf das Empfangen der jeweiligen Registrierungsnachricht erstellen oder aktualisieren. In anderen Ausführungsformen kann die Datenbank eine statische Datenbank sein, die manuell aktualisiert wird, wenn neue Sensoren online gehen oder wenn sich Informationen für vorhandene Sensoren ändern. Die Sensorinformationen für jeden der Sensoren 104(1-M) können einen Sensortyp, einen Datentyp, einen Standort, eine Orientierung, einen Bereich, APIs, Abfrageschnittstellen, Kanalinformationen oder eine beliebige Kombination davon aufweisen. Die Datenbank kann verwendet werden, um eine Karte der Sensoren 104(1-M) zu erstellen, die für die Clients 102(1-N) verfügbar sind. In einigen Ausführungsformen kann der Datenserver 120 ein Sensorabonnementmodul aufweisen, das zusammen mit der Sensorkommunikationsschnittstelle die Datenfeeds der Sensoren 104(1-M) abonniert und die Datenfeeds der Sensoren 104(1-M) analysiert. Ferner kann der Datenserver 120 den Zugriff auf jeden der Sensoren 104(1-M) steuern und Verbindungen zu jedem von diesen unter Verwendung der Sensorkommunikationsschnittstelle überwachen.
  • Die jeweiligen Anwendungen 103(1-N) von jedem der Clients 102(1-N) können Sensorinformationen vom Datenserver 120 unter Verwendung der Serverkommunikationsschnittstelle, die den Sendeempfänger der autonomen Vorrichtung des Clients steuert, anfordern. Die Clients 102(1-N) können die autonome oder halbautonome Vorrichtung aufweisen, die in der Lage ist, von einem Standort zu einem anderen zu navigieren. In einigen Beispielen können die autonomen Vorrichtungen in der Lage sein, innerhalb eines Gebäudes oder eines anderen Raums mit einem definierten Umfang, wie beispielsweise innerhalb eines Parks, ohne menschliche Eingabe zu navigieren. In einigen Beispielen kann die autonome Vorrichtung in der Lage sein, auf Straßen, Landstraßen, Fernstraßen, Schnellstraßen usw. ohne menschliche Eingabe zu navigieren. In einigen Beispielen können die autonomen Vorrichtungen in der Lage sein, bei einem Geländeeinsatz, wie beispielsweise einem Katastrophenschutzeinsatz oder einem militärischen Kampfeinsatz, ohne menschliche Eingabe zu navigieren.
  • Die Clients 102(1-N) können das Sensorerkennungssystem zur Vorerkennung von Sensoren, die sich noch nicht im Bereich entlang einer geplanten Route befinden, für Anforderungen von Sensoren verwenden, die Einblick in Bereiche geben können, die von Sensoren auf den Clients 102(1-N) verdeckt (z. B. um eine Ecke herum) sind. Die Anforderung kann den Standort des anfordernden Clients, Informationen über die geplante Route, den Zielstandort, den Clienttyp, gewünschte Sensoreigenschaften (z. B. Sensortyp, Teil- oder Vollbewegung usw.), eine bestimmte Sensororientierung usw. aufweisen. In Reaktion auf das Empfangen der Anforderung kann der Datenserver 120 unter Verwendung des Sensorauswahlmoduls und der Vorrichtungskommunikationsschnittstelle Sensorinformationen für ausgewählte Sensoren der Sensoren 104(1-M) an den anfordernden Client bereitstellen. Beispielsweise kann das Sensorauswahlmodul des Datenservers 120 die Datenbank im Datenspeicher 130 nach Sensoren abfragen, die auf die Anforderung reagieren. In einigen Beispielen kann die Anforderung für verfügbare Sensoren entlang einer geplanten Route zwischen einem aktuellen Standort und einem Zielstandort sein. Das Sensorauswahlmodul des Datenservers 120 kann die Datenbank abfragen, um relevante Sensoren der Sensoren 104(1-M) entlang der geplanten Route auszuwählen. In anderen Beispielen kann die Anforderung für Sensorinformationen für alle Sensoren entlang einer beliebigen Route zwischen dem aktuellen Standort und dem Zielstandort sein.
  • In einigen Beispielen kann die Vorrichtungskommunikationsschnittstelle des Datenservers 120 die Datenfeedabonnement-Informationen für jeden der ausgewählten Sensoren an den anfordernden Client bereitstellen, die unter Verwendung des Sensorabonnementmoduls abonniert und am Datenserver 120 erfasst werden können. Die Datenfeedabonnement-Informationen können einen Sensortyp, einen Datentyp, einen Standort, eine Orientierung, einen Bereich, APIs, Abfrageschnittstellen, Kanalinformationen oder eine beliebige Kombination davon aufweisen. In einem Beispiel kann das Sensorauswahlmodul des Datenservers 120 den Zugriff auf einen Sensor, der keine verfügbaren Kanäle aufweist, oder auf einen Client, der nicht autorisiert ist, um auf den Sensor zuzugreifen (z. B. basierend auf dem Clienttyp), beschränken (z. B. Sensorinformationen zurückhalten).
  • Der anfordernde Client kann die Sensorinformationen verwenden, um Datenfeeds von einem oder mehreren der ausgewählten Sensoren zu abonnieren, wobei die Sensorkommunikationsschnittstelle verwendet wird, die den Sendeempfänger der autonomen Vorrichtung steuert, um Daten abzurufen. In einigen Beispielen kann das Abonnement des Datenfeeds durch den Datenserver 120 statt direkt von den ausgewählten Sensoren empfangen werden und kann über die Serverkommunikationsschnittstelle des anfordernden Clients empfangen werden. Das Hindernisvermeidungsmodul des anfordernden Clients kann die Datenfeeds von dem einen oder den mehreren Sensoren analysieren, um Routeninformationen zwischen dem Zielstandort und dem aktuellen Standort zu bestimmen. Beispielsweise kann das Hindernisvermeidungsmodul des anfordernden Clients eine Route, die sich innerhalb eines Temperaturbereichs befindet, eine Route, die Wege oder Straßen aufweist, die die physische Größe (z. B. breit genug oder mit ausreichender Höhenfreiheit) oder das Gewicht (z. B. Wege oder Straßen mit Gewichtsgrenzen) des anfordernden Clients handhaben können, Routen, die frei von Hindernissen oder Verkehr sind, oder eine beliebige Kombination davon auswählen. Zusätzlich können die Routeninformationen Geländeinformationen, Neigungsinformationen, Geschwindigkeitsinformationen usw. aufweisen.
  • Wenn der anfordernde Client von einem Standort zu einem anderen navigiert, kann er unter Verwendung der Serverkommunikationsschnittstelle eine weitere Anforderung von Sensorinformationen an den Datenserver 120 senden. Das Sensorauswahlmodul des Datenservers 120 kann erneut die Datenbank abfragen, um Sensoren der Sensoren 104(1-M) auszuwählen, die sich in Bereichen befinden, die für mögliche Routen zwischen dem neuen Standort und dem vorherigen oder einem neuen Zielstandort relevant sind. Somit kann der anfordernde Client den Datenserver 120 verwenden, um dynamisch eine Liste verfügbarer Sensoren vor der Detektion (z. B. außerhalb des Sensorbereichs) eines Sensors durch den anfordernden Client zu aktualisieren, anstatt zu erfordern, dass alle Sensorinformationen zuvor statisch geladen sind, oder eine Detektion nur dann zu erlauben, wenn sich der anfordernde Client innerhalb eines Detektionsbereichs befindet. Wenn ferner ein Datenfeed eines Sensors durch den Datenserver 120 oder die Drittserver 150 bereitgestellt wird, bevor sich der anfordernde Client innerhalb eines Detektionsbereichs des Sensors befindet, kann dem anfordernden Client genügend Zeit zur Verfügung gestellt werden, um die Daten vom Sensor zu analysieren, bevor sie für das Hindernisvermeidungsmodul des anfordernden Clients obsolet werden. Wenn beispielsweise der anfordernde Client nur in der Lage ist, den Zugriff auf einen Datenfeed eines Sensors zu initiieren, wenn er sich in einem Detektionsbereich des Sensors befindet, können die erfassten Daten möglicherweise zu spät empfangen werden, um für den Client nützlich zu sein (z. B. bewegt sich der anfordernde Client zu schnell). Wenn den Clients 102(1-N) ermöglicht wird, verfügbare Sensoren dynamisch zu aktualisieren, kann die Portabilität der Clients 102(1-N) zu anderen Umgebungen verbessert werden und können Routing- und Navigationsfähigkeiten verbessert werden.
  • In einigen Beispielen können einer oder mehrere der Sensoren 104(1-M) Sensordatenfeeds bei Drittservern 150 speichern, und die Sensorinformationen können Informationen aufweisen, um auf die gespeicherten Sensordatenfeeds auf den Drittservern 130 zuzugreifen. Ferner können in einigen Beispielen einer oder mehrere der Sensoren 104(1-M) auf oder bei einem oder mehreren der Clients 102(1-N) eingeschlossen sein, so dass andere der Clients 102(1-N) auf Datenfeeds von Sensoren eines Clients 102(1-N) zugreifen können.
  • 2 veranschaulicht einen beispielhaften Anwendungsfall für ein Sensorkommunikationssystem (System) 200 gemäß einer Ausführungsform der Offenbarung. Das System 200 kann verwendet werden, um Sensoren 204(1-4) bei einem Datenserver 210 zu registrieren, und der Datenserver 210 kann Sensorinformationen an einen Client 220 in Reaktion auf eine Anforderung vom Client 220 bereitstellen. Der Client 220 kann eine Route erfordern, um von einem aktuellen Standort zu einem Zielstandort 250 zu navigieren. Das Routing kann Hindernisse wie beispielsweise ein Hindernis 240, Wände eines ersten Raums 260, Wände eines zweiten Raums 262, Wände eines vierten Raums 266, Wände eines dritten Raums 264 und eine Wand 268 berücksichtigen. Der Datenserver 210 kann in einem oder mehreren der Datenserver 120 aus 1 implementiert sein. Der Client 220 kann in einem oder mehreren der Clients 102(1-N) aus 1 implementiert sein. Die Sensoren 204(1-4) können in den Sensoren 104(1-M) aus 1 implementiert sein.
  • Die Sensoren 204(1-4) können viele verschiedene Typen von Sensoren aufweisen oder können alle homogen sein. Beispiele für Sensortypen können Infrarot, Temperatur, Ton, Video, Temperatur, Geschwindigkeit und Feuchtigkeit umfassen. Jeder der Sensoren 204(1-4) kann bestimmte Eigenschaften aufweisen, wie beispielsweise einen Datentyp (z. B. Format der Daten), einen Standort, eine Orientierung, einen Bereich, APIs, Abfrageschnittstellen, Kanalinformationen oder eine beliebige Kombination davon.
  • Der Datenserver 210 kann Registrierungsanforderungen von den Sensoren 204(1-4) empfangen und in Reaktion auf die Registrierungsanforderungen einen Eintrag mit Sensorinformationen für jeden der Sensoren 204(1-4) in einer Datenbank erstellen. Die Sensorinformationen können Datenfeedabonnement-Informationen aufweisen, die mit einem jeweiligen Sensor assoziiert sind, wie beispielsweise einen Sensortyp, einen Datentyp, einen Standort, eine Orientierung, einen Bereich, APIs, Abfrageschnittstellen oder eine beliebige Kombination davon. Der Datenserver 210 kann auch Anforderungen von Sensorinformationen vom Client 220 empfangen und beantworten. Beispielsweise kann der Client 220 Sensorinformationen vom Datenserver 210 basierend auf z. B. einem aktuellen Standort, einem Zielstandort, einem Clienttyp usw. anfordern. Der Datenserver 210 kann die Datenbank basierend auf der Anforderung abfragen und Sensorinformationen bereitstellen, die mit ausgewählten Sensoren der Sensoren 204(1-4) in Reaktion auf die Anforderung assoziiert sind.
  • Der Client 220 kann mit einem Netz gekoppelt sein, um Sensorinformationsanforderungen an den Datenserver 210 und/oder Sensorverbindungsanforderungen an die Sensoren 204(1-4) bereitzustellen und um Sensorinformationen vom Client 220 und/oder Sensor-Abonnementdatenfeeds von den Sensoren 204(1-4) zu empfangen.
  • Während des Betriebs können der Datenserver 210 und die 204(1-4) einen Registrierungsprozess durchführen, wobei Sensorinformationen für jeden der Sensoren 204(1-4) in einem jeweiligen Datenbankeintrag auf dem Datenserver 210 gespeichert werden. In einigen Ausführungsformen kann der Registrierungsprozess ein dynamischer Registrierungsprozess sein, wobei jeder neue Sensor eine Registrierungsnachricht mit jeweiligen Sensorinformationen an den Datenserver 210 sendet oder auf eine Registrierungsanforderung vom Datenserver 210 mit der Registrierungsnachricht antwortet. Der Datenserver 210 kann einen Datenbankeintrag für jeden Sensor 204(1-4) in Reaktion auf das Empfangen der jeweiligen Registrierungsnachricht erstellen oder aktualisieren. In anderen Ausführungsformen kann die Datenbank eine statische Datenbank sein, die manuell aktualisiert wird, wenn neue Sensoren online gehen oder wenn sich Informationen für vorhandene Sensoren ändern. Die Sensorinformationen für jeden der Sensoren 204(1-4) können einen Sensortyp (z. B. Infrarot, Temperatur, Ton, Video, Temperatur, Geschwindigkeit, Feuchtigkeit), einen Datentyp (z. B. Format der Daten), einen Standort, eine Orientierung, einen Bereich, APIs, Abfrageschnittstellen oder eine beliebige Kombination davon aufweisen. Die Datenbank kann verwendet werden, um eine Karte der Sensoren 204(1-4) zu erstellen, die für den Client 220 verfügbar sind. In einigen Ausführungsformen kann der Datenserver 210 die Datenfeeds der Sensoren 204(1-4) abonnieren, und der Datenserver 210 kann die Datenfeeds der Sensoren 204(1-4) analysieren.
  • Der Client 220 kann eine autonome oder halbautonome Vorrichtung aufweisen, die in der Lage ist, von einem aktuellen Standort zum Zielstandort 250 zu navigieren, wie beispielsweise einen Roboter oder ein Fahrzeug. Der Client 220 kann das Sensorerkennungssystem zur Vorerkennung von Sensoren, die sich noch nicht im Bereich entlang einer geplanten Route befinden, für Anforderungen von Sensoren verwenden, die Einblick in Bereiche geben können, die von Sensoren auf dem Client 220 verdeckt (z. B. um eine Ecke herum) sind. In dem in 2 dargestellten Beispiel kann der Client 220 in der Lage sein, in einem oder mehreren der Pfade zwischen dem ersten Raum 260, dem zweiten Raum 262, dem dritten Raum 264, dem vierten Raum 266 und der Wand 268 zum Zielstandort 250 zu navigieren. Die Anforderung kann den Standort des anfordernden Clients, Informationen über die geplante Route, den Zielstandort 250, den Clienttyp, gewünschte Sensoreigenschaften (z. B. Sensortyp, Teil- oder Vollbewegung usw.), eine bestimmte Sensororientierung usw. aufweisen.
  • In Reaktion auf das Empfangen der Anforderung kann der Datenserver 210 Sensorinformationen für ausgewählte Sensoren der Sensoren 204(1-4) basierend auf der Anforderung bereitstellen. Die Anforderung von Sensorinformationen kann eine Anforderung von Datenfeedabonnement-Informationen für verfügbare Sensoren aufweisen, die beim Routing zwischen einem aktuellen Standort und dem Zielstandort 250 nützlich sein können. Der Datenserver 210 kann Sensoren der Sensoren 204(1-4) z. B. aus der Karte der Sensoren 204(1-4) auswählen, die in Bereichen liegen, die für mögliche Routen zwischen dem aktuellen Standort und dem Zielstandort relevant sind, und kann die Datenfeedabonnement-Informationen für jeden der ausgewählten Sensoren an den Client 220 bereitstellen. Die Datenfeedabonnement-Informationen können einen Sensortyp, einen Datentyp, einen Standort, eine Orientierung, einen Bereich, APIs, Abfrageschnittstellen oder eine beliebige Kombination davon aufweisen. Der Client 220 kann die Sensorinformationen verwenden, um Datenfeeds von einem oder mehreren der ausgewählten Sensoren zu abonnieren, um Daten abzurufen. Der Client 220 kann die Datenfeeds von dem einen oder den mehreren Sensoren analysieren, um eine Route vom aktuellen Standort zum Zielstandort zu bestimmen. In einigen Beispielen können die Datenfeeds über den Datenserver 210 und nicht direkt von den Sensoren 204(1-4) an den Client 220 bereitgestellt werden.
  • In einem bestimmten Beispiel kann der Client 220 eine erste Route zwischen dem vierten Raum 266 und dem zweiten Raum 262 geplant haben, bevor er nach links abbiegt und parallel zur Wand 268 zum Zielstandort 250 navigiert. In Reaktion auf die Detektion des Hindernisses 240 kann der Client 220 jedoch eine Anforderung von Sensorinformationen senden, die Sensoren entlang einer zweiten geplanten Route zum Zielstandort 250 identifizieren, die zwischen dem zweiten Raum 262 und dem dritten Raum 264 vor dem Abbiegen nach rechts zwischen dem ersten Raum 260 und dem zweiten Raum 262 und dann Abbiegen nach links zwischen dem ersten Raum 260 und der Wand 268 navigiert. In Reaktion auf die Anforderung kann der Datenserver 210 Sensorinformationen, die mit dem Sensor 204(2) assoziiert sind, die für die erste Route nicht relevant gewesen sein könnten, zusammen mit Sensorinformationen für die Sensoren 204(1 und 4), bereitstellen. Der Client 220 kann die Datenfeeds des Sensors 204(2) zusätzlich zu den Datenfeeds der Sensoren 204(1 und 4) analysieren, um zu bestimmen, ob die zweite Route navigierbar ist. Wenn dem Client 220 ermöglicht wird, eine geplante Route zu aktualisieren und andere Sensoren dynamisch zu erkennen, ist der Client 220 in der Lage, sich an ungeplante Situationen anzupassen, die eine Navigation verhindern können.
  • 3 ist ein Daten- und Steuerflussdiagramm 300, das die Sensorregistrierung in einem Sensorerkennungssystem veranschaulicht. Das Flussdiagramm 300 kann eine Sensorregistrierung 310 und (eine) zentrale Engine(s) 320 aufweisen. Die Sensorregistrierung 310 kann Registrierungsinformationen für einen Sensor aufweisen, wie beispielsweise einen der Sensoren 104(1-M) aus 1 und/oder der Sensoren 204(1-4) aus 2. Die Sensorregistrierung 310 kann Informationen sein, die in einem Eintrag in einer Datenbank für einen bestimmten Sensor gespeichert sind. Die Sensorregistrierung kann in einer Registrierungsnachricht eingeschlossen sein. Die Sensorregistrierung 310 kann einen Sensortyp, einen Datentyp, logistische Informationen (z. B. Standort, Orientierung und Bereich) und Zugriffsinformationen (z. B. APIs und Abfrageschnittstelle) aufweisen.
  • Die zentrale(n) Engine(s) 320 kann/können die Sensorregistrierung 310 für jeden Sensor verwenden, um Sensoren auszuwählen, die auf eine Anforderung von einem Client, wie beispielsweise von einem der Clients 102(1-N) oder dem Client 220, reagieren. Die zentrale(n) Engine(s) 320 kann/können eine Karte der Sensoren basierend auf der Sensorregistrierung 310 erstellen, um die Auswahl von Sensoren vorzunehmen. Ferner kann/können die zentrale(n) Engine(s) 320 die Kontrolle über den Zugriff auf die Sensoren sowie den Bestand verfügbarer Sensorkanäle für jeden Sensor behalten, und welchen Clients jeder Sensorkanal zugewiesen ist.
  • 4 ist ein Daten- und Steuerflussdiagramm 400, das die Sensorerkennung in einem Sensorerkennungssystem veranschaulicht. Das Flussdiagramm 400 kann eine autonome Vorrichtung 410, (eine) zentrale Engine(s) 420 und (eine) Sensorinstanz(en) 430 aufweisen. Die autonome Vorrichtung 410 kann eine Vorrichtung sein, die in der Lage ist, ihre Umgebung ohne menschliche Eingabe zu erfassen und zu navigieren, und kann in einem der Clients 102(1-N) aus 1 und/oder dem Client 220 aus 2 eingeschlossen sein. Die autonome Vorrichtung 410 kann das Sensorerkennungssystem zur Vorerkennung von Sensoren, die sich noch nicht im Bereich entlang einer geplanten Route befinden, für Anforderungen von Sensoren verwenden, die Einblick in Bereiche geben können, die von Sensoren auf der autonomen Vorrichtung 410 verdeckt (z. B. um eine Ecke herum) sind. Die Anforderung kann den Standort des anfordernden Clients, Informationen über die geplante Route, den Zielstandort, den Clienttyp, gewünschte Sensoreigenschaften (z. B. Sensortyp, Teil- oder Vollbewegung usw.), eine bestimmte Sensororientierung usw. aufweisen.
  • In Reaktion auf das Empfangen der Anforderung kann/können die zentrale(n) Engine(s) 420 Sensorinformationen für ausgewählte Sensoren bereitstellen. Beispielsweise kann/können die zentrale(n) Engine(s) 420 eine Datenbank nach Sensoren abfragen, die auf die Anforderung reagieren. In einigen Beispielen kann die Anforderung für verfügbare Sensoren entlang einer geplanten Route zwischen einem aktuellen Standort und einem Zielstandort sein. Die zentrale(n) Engine(s) 420 kann/können die Datenbank abfragen, um relevante Sensoren entlang der geplanten Route auszuwählen. Die Sensorinstanz(en) 430 kann/können verschiedene Sensoren sein, die verfügbar sind, um Datenfeeds bereitzustellen. Für die ausgewählten Sensoren kann/können die zentrale(n) Engine(s) 420 als ein Kanal zum Bereitstellen eines Datenfeeds von der/den Sensorinstanz(en) 430 zur autonomen Vorrichtung 410 fungieren oder API- und Abfrageinformationen für die autonome Vorrichtung 410 bereitstellen, wodurch der autonomen Vorrichtung 410 ermöglicht wird, Datenfeeds der Sensorinstanz(en) 430 direkt zu abonnieren. Die autonome Vorrichtung 410 kann Datenfeeds von den ausgewählten Sensorinstanzen verwenden, um Routinginformationen zu bestimmen. In anderen Beispielen kann/können die zentrale(n) Engine(s) 420 Datenfeeds von den ausgewählten Sensorinstanzen verarbeiten, um Routinginformationen an die autonome Vorrichtung 410 bereitzustellen. In einigen Beispielen können die Routinginformationen Geschwindigkeits- und Geländedaten sowie Richtungsdaten aufweisen.
  • 5 veranschaulicht ein Verfahren 500 zur Sensorerkennung in einer autonomen Vorrichtung gemäß einigen Ausführungsformen. Das Verfahren 500 kann in dem Datenserver 120 und/oder den Drittservern 150 aus 1, dem Datenserver 210 aus 2, der/den zentralen Engine(s) 320 aus 3, der/den zentralen Engine(s) 420 aus 4 oder Kombinationen davon implementiert sein.
  • Das Verfahren 500 kann bei 510 das Empfangen einer Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route von einem Client umfassen. Der Client kann eine autonome Vorrichtung aufweisen, die in der Lage ist, in einer Umgebung ohne menschliche Eingabe zu navigieren. Der Client kann ein beliebiger der Clients 102(1-N) aus 1, der Client 220 aus 2, die autonome Vorrichtung 410 aus 4 oder Kombinationen davon sein.
  • In einigen Beispielen kann das Verfahren 500 ferner das Empfangen einer Registrierungsnachricht von einem Sensor der Mehrzahl von Sensoren umfassen. Die Mehrzahl von Sensoren kann die Sensoren 104(1-M) aus 1, die Sensoren 204(1-4) aus 2, die Sensorinstanz(en) 430 aus 4 oder Kombinationen davon umfassen. Die Registrierungsnachricht kann jeweilige Sensorinformationen für den Sensor aufweisen. In einigen Beispielen kann das Verfahren 500 ferner das Erstellen eines Eintrags in der Datenbank für den Sensor umfassen, wobei der Eintrag die Sensorinformationen aufweist. Die Sensorinformationen, die vom Sensor empfangen werden, können einen Standort, eine Orientierung, einen Bereich, einen Sensortyp, einen Datentyp, eine Anwendungsprogrammschnittstelle, eine Abfrageschnittstelle oder Kombinationen davon aufweisen. In einigen Beispielen kann das Verfahren 500 ferner das Erstellen einer Karte der Mehrzahl von Sensoren aus der Datenbank umfassen.
  • Das Verfahren 500 kann bei 520 ferner das Auswählen von Sensoren einer Mehrzahl von Sensoren entlang der geplanten Route umfassen. Die Mehrzahl von Sensoren kann die Sensoren 104(1-M) aus 1, die Sensoren 204(1-4) aus 2, die Sensorinstanz(en) 430 aus 4 oder Kombinationen davon umfassen. In einigen Beispielen kann das Verfahren 500 ferner das Abfragen einer Datenbank umfassen, um zu bestimmen, welche der Mehrzahl von Sensoren entlang der geplanten Route sind. In einigen Beispielen kann das Verfahren 500 ferner das Zurückhalten von Sensorinformationen für einen Sensor der Mehrzahl von Sensoren, auf die der Client nicht zugreifen kann, umfassen. In einigen Beispielen kann die Auswahl der ausgewählten Sensoren auf Standorten auf der Karte der Mehrzahl von Sensoren basieren. In einigen Beispielen kann sich wenigstens einer der ausgewählten Sensoren außerhalb eines Detektionsbereichs des Clients befinden.
  • Das Verfahren 500 kann bei 530 ferner das Bereitstellen von Sensorinformationen für die ausgewählten Sensoren an den Client umfassen. In einigen Beispielen kann das Verfahren 500 ferner das Bereitstellen eines Datenfeeds eines Sensors der ausgewählten Sensoren an den Client umfassen. In einigen Beispielen kann das Verfahren 500 ferner das Zuweisen eines Kanals eines Datenfeeds von einem Sensor der ausgewählten Sensoren an den Client umfassen.
  • 6 veranschaulicht ein Verfahren 600 zur Sensorerkennung in einer autonomen Vorrichtung gemäß einigen Ausführungsformen. Das Verfahren 600 kann in dem Datenserver 120 und/oder den Drittservern 150 aus 1, dem Datenserver 210 aus 2, der/den zentralen Engine(s) 320 aus 3, der/den zentralen Engine(s) 420 aus 4 oder Kombinationen davon implementiert sein.
  • Das Verfahren 600 kann bei 610 das Empfangen einer Registrierungsnachricht von jedem einer Mehrzahl von Sensoren umfassen, wobei die Registrierungsnachricht jeweilige Sensorinformationen aufweist. Der Client kann eine autonome Vorrichtung aufweisen, die in der Lage ist, in einer Umgebung ohne menschliche Eingabe zu navigieren. Der Client kann ein beliebiger der Clients 102(1-N) aus 1, der Client 220 aus 2, die autonome Vorrichtung 410 aus 4 oder Kombinationen davon sein. Die Registrierungsnachricht kann einen Sensortyp, einen Datentyp, einen Standort, eine Orientierung, einen Bereich, eine Anwendungsprogrammschnittstelle, eine Abfrageschnittstelle oder eine beliebige Kombination davon aufweisen.
  • Das Verfahren 600 kann bei 620 das Erstellen eines jeweiligen Eintrags in einer Datenbank für jeden der Mehrzahl von Sensoren umfassen. Die Mehrzahl von Sensoren kann die Sensoren 104(1-M) aus 1, die Sensoren 204(1-4) aus 2, die Sensorinstanz(en) 430 aus 4 oder Kombinationen davon umfassen. Jeder jeweilige Eintrag in der Datenbank kann die jeweiligen Sensorinformationen des entsprechenden Sensors der Mehrzahl von Sensoren aufweisen. In einigen Beispielen kann das Verfahren 600 ferner das Erstellen einer Karte der Mehrzahl von Sensoren aus der Datenbank umfassen.
  • Das Verfahren 600 kann bei 630 in Reaktion auf eine Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route das Abfragen der Datenbank umfassen, um Sensoren der Mehrzahl von Sensoren basierend auf der Anforderung auszuwählen. In einigen Beispielen kann das Verfahren 600 ferner das Auswählen der Sensoren von der Karte umfassen. Die Anforderung kann von einem Client mit einer autonomen Vorrichtung empfangen werden, wie beispielsweise einem beliebigen der Clients 102(1-N) aus 1, dem Client 220 aus 2, der autonomen Vorrichtung 410 aus 4 oder Kombinationen davon.
  • Verschiedene veranschaulichende Komponenten, Blöcke, Konfigurationen, Module und Schritte wurden oben im Allgemeinen in Bezug auf ihre Funktionalität beschrieben. Fachleute können die beschriebene Funktionalität auf verschiedene Weisen für jede bestimmte Anwendung implementieren, jedoch sollten derartige Implementierungsentscheidungen nicht so ausgelegt werden, dass sie eine Abweichung vom Schutzbereich der vorliegenden Offenbarung bewirken.
  • Die vorhergehende Beschreibung der offenbarten Ausführungsformen wird bereitgestellt, um es Fachleuten auf dem Gebiet zu ermöglichen, die offenbarten Ausführungsformen herzustellen oder zu verwenden. Verschiedene Modifikationen dieser Ausführungsformen werden für Fachleute auf dem Gebiet ohne Weiteres ersichtlich sein, und die hierin definierten Prinzipien können auf andere Ausführungsformen angewendet werden, ohne vom Schutzbereich der Offenbarung abzuweichen. Somit soll die vorliegende Offenbarung nicht auf die hierin gezeigten Ausführungsformen beschränkt sein, sondern ihr soll der größtmögliche Schutzbereich zukommen, der mit den Prinzipien und neuartigen Merkmalen, wie zuvor beschrieben, übereinstimmt.
  • Beispiele, wie hierin beschrieben, können Logik oder eine Anzahl von Komponenten, Modulen oder Mechanismen umfassen oder können mit diesen arbeiten. Module sind greifbare Entitäten (z. B. Hardware), die in der Lage sind, spezifizierte Operationen durchzuführen, und auf eine bestimmte Art und Weise konfiguriert oder angeordnet sein können. In einem Beispiel können Schaltungen (z. B. intern oder in Bezug auf externe Entitäten wie beispielsweise andere Schaltungen) in einer spezifizierten Art und Weise als ein Modul angeordnet sein. In einem Beispiel kann sich die Software auf wenigstens einem maschinenlesbaren Medium befinden.
  • Der Begriff „Modul“ soll eine greifbare Entität umfassen, sei es eine Entität, die physisch konstruiert, spezifisch konfiguriert (z. B. fest verdrahtet) oder temporär (z. B. transitorisch) konfiguriert (z. B. programmiert) ist, um in einer spezifizierten Art und Weise zu arbeiten oder um wenigstens einen Teil einer hierin beschriebenen Operation durchzuführen. Betrachtet man Beispiele, in denen Module temporär konfiguriert sind, muss ein Modul nicht zu irgendeinem Zeitpunkt instanziiert werden. Wenn beispielsweise die Module einen Universal-Hardwareprozessor umfassen, der unter Verwendung von Software konfiguriert ist, kann der Universal-Hardwareprozessor als jeweils unterschiedliche Module zu unterschiedlichen Zeitpunkten konfiguriert sein. Software kann dementsprechend einen Hardwareprozessor konfigurieren, um beispielsweise zu einem Zeitpunkt ein bestimmtes Modul zu bilden und zu einem anderen Zeitpunkt ein anderes Modul zu bilden. Die Begriffe „Anwendung“, „Prozess“ oder „Dienst“ oder Varianten davon werden hierin weitläufig verwendet, um Routinen, Programmmodule, Programme, Komponenten und dergleichen zu umfassen, und können in verschiedenen Systemkonfigurationen implementiert sein, einschließlich Einzelprozessor- oder Multiprozessorsystemen, mikroprozessorbasierter Elektronik, Einkern- oder Mehrkernsystemen, Kombinationen davon und dergleichen. Somit können die Begriffe „Anwendung“, „Prozess“ oder „Dienst“ verwendet werden, um sich auf eine Ausführungsform von Software oder auf Hardware zu beziehen, die angeordnet ist, um wenigstens einen Teil einer hierin beschriebenen Operation durchzuführen.
  • Obgleich ein maschinenlesbares Medium ein einzelnes Medium aufweisen kann, kann der Begriff „maschinenlesbares Medium“ ein einzelnes Medium oder mehrere Medien (z. B. eine zentralisierte oder verteilte Datenbank und/oder assoziierte Caches und Server) umfassen.
  • Zusätzliche Anmerkungen und Beispiele:
  • Beispiel 1 umfasst einen Gegenstand (wie beispielsweise eine Vorrichtung, Einrichtung oder Maschine), um eine dynamische Sensorerkennung zu ermöglichen, umfassend: eine autonome Vorrichtung mit einem Sendeempfänger, wobei die autonome Vorrichtung in der Lage ist, unter Verwendung von Sensordaten von einem aktuellen Standort zu einem Zielstandort zu navigieren; eine Serverkommunikationsschnittstelle zum Steuern des Sendeempfängers, um eine Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route bereitzustellen und um jeweilige Sensorinformationen für jeden von einem Satz ausgewählter Sensoren zu empfangen, die von einem Datenserver basierend auf der Anforderung ausgewählt werden; eine Sensorkommunikationsschnittstelle zum Steuern des Sendeempfängers, um einen Datenfeed eines Sensors des Satzes ausgewählter Sensoren entlang der geplanten Route basierend auf Sensorinformationen, die dem Sensor entsprechen, zu abonnieren; und eine Hindernisvermeidungsschnittstelle zum Analysieren des Datenfeeds, um zu bestimmen, ob mit der geplanten Route fortgefahren werden soll.
  • In Beispiel 2 kann der Gegenstand von Beispiel 1 umfassen, dass die Anforderung ferner einen gewünschten Sensortyp aufweist, wobei der Satz ausgewählter Sensoren, die vom Datenserver ausgewählt werden, ferner auf dem gewünschten Sensortyp basiert.
  • In Beispiel 3 kann der Gegenstand eines der Beispiele 1 bis 2 umfassen, dass die Serverkommunikationsschnittstelle in Reaktion auf die Detektion eines Hindernisses durch die Hindernisvermeidungsschnittstelle den Sendeempfänger steuert, um eine zweite Anforderung von Sensorinformationen für Sensoren entlang einer zweiten geplanten Route bereitzustellen, und jeweilige Sensorinformationen für jeden von einem zweiten Satz ausgewählter Sensoren empfängt, die basierend auf der zweiten Anforderung vom Datenserver ausgewählt werden.
  • In Beispiel 4 kann der Gegenstand eines der Beispiele 1 bis 3 umfassen, dass die Sensorinformationen für den Sensor des Satzes ausgewählter Sensoren wenigstens eine von einer Anwendungsprogrammschnittstelle oder einer Abfrageschnittstelle aufweisen.
  • In Beispiel 5 kann der Gegenstand eines der Beispiele 1 bis 4 umfassen, dass sich wenigstens einer vom Satz ausgewählter Sensoren außerhalb eines Detektionsbereichs des Clients befindet.
  • Beispiel 6 umfasst einen Gegenstand (wie beispielsweise eine Vorrichtung, Einrichtung oder Maschine), um eine dynamische Sensorerkennung zu ermöglichen, umfassend: eine Vorrichtungsschnittstelle zum Steuern eines Sendeempfängers, um eine Anforderung der Sensorinformationen für Sensoren entlang einer geplanten Route von einer Vorrichtung zu empfangen, die eine autonome Vorrichtung aufweist, die in der Lage ist, unter Verwendung von Sensordaten von einem aktuellen Standort zu einem Zielstandort zu navigieren, wobei die Vorrichtungsschnittstelle den Sendeempfänger ferner steuert, um dem Client Sensorinformationen für jeden von einem Satz ausgewählter Sensoren bereitzustellen; und ein Sensorauswahlmodul zum Auswählen des Satzes ausgewählter Sensoren einer Mehrzahl von Sensoren entlang der geplanten Route in Reaktion auf die Anforderung.
  • In Beispiel 7 kann der Gegenstand von Beispiel 6 umfassen, dass die Anforderung ferner einen gewünschten Sensortyp aufweist, wobei das Sensorauswahlmodul den Satz von Sensoren der Mehrzahl von Sensoren entlang der geplanten Route basierend auf dem gewünschten Sensortyp auswählt.
  • In Beispiel 8 kann der Gegenstand eines der Beispiele 6 bis 7 umfassen, dass die Vorrichtungsschnittstelle zum Steuern des Sendeempfängers eine zweite Anforderung von Sensorinformationen für Sensoren entlang einer zweiten geplanten Route empfängt und dem Client die Sensorinformationen für jeden von einem zweiten Satz ausgewählter Sensoren bereitstellt, wobei das Sensorauswahlmodul einen zweiten Satz ausgewählter Sensoren der Mehrzahl von Sensoren entlang der zweiten geplanten Route in Reaktion auf die zweite Anforderung auswählt.
  • In Beispiel 9 kann der Gegenstand eines der Beispiele 6 bis 8 eine Sensorkommunikationsschnittstelle zum Steuern des Sendeempfängers umfassen, um die Sensorinformationen von jedem der Mehrzahl von Sensoren zu empfangen, wobei die Sensorinformationen von einem Sensor der Mehrzahl von Sensoren wenigstens eines von einem Standort, einer Orientierung oder einem Bereich aufweisen.
  • In Beispiel 10 kann der Gegenstand eines der Beispiele 6 bis 9 umfassen, dass die Sensorinformationen vom Sensor der Mehrzahl von Sensoren einen Sensortyp und einen Datentyp aufweisen.
  • In Beispiel 11 kann der Gegenstand eines der Beispiele 6 bis 10 umfassen, dass die Sensorinformationen vom Sensor der Mehrzahl von Sensoren eine Anwendungsprogrammschnittstelle oder eine Abfrageschnittstelle aufweisen.
  • In Beispiel 12 kann der Gegenstand eines der Beispiele 6 bis 11 umfassen, dass das Sensorauswahlmodul eine Karte der Mehrzahl von Sensoren aus der Datenbank erstellt und den Satz ausgewählter Sensoren basierend auf Standorten auf der Karte der Mehrzahl von Sensoren auswählt.
  • In Beispiel 13 kann der Gegenstand eines der Beispiele 6 bis 12 umfassen, dass das Sensorauswahlmodul Sensorinformationen für einen Sensor der Mehrzahl von Sensoren zurückhält, auf die der Client nicht zugreifen kann.
  • In Beispiel 14 kann der Gegenstand eines der Beispiele 6 bis 13 umfassen, dass das Sensorauswahlmodul eine Liste verfügbarer Kanäle für einen Sensor der Mehrzahl von Sensoren führt.
  • Beispiel 15 umfasst einen Gegenstand (wie beispielsweise ein Verfahren, Mittel zum Durchführen von Handlungen, ein maschinenlesbares Medium mit Anweisungen, die, wenn sie durch eine Maschine durchgeführt werden, bewirken, dass die Maschine Handlungen durchführt, oder eine Einrichtung zum Durchführen), um eine dynamische Sensorerkennung zu ermöglichen, umfassend: Empfangen einer Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route von einem Client, wobei der Client eine autonome Vorrichtung aufweist, die in der Lage ist, ohne menschliche Eingabe in einer Umgebung zu navigieren; Auswählen von Sensoren einer Mehrzahl von Sensoren entlang der geplanten Route; und Bereitstellen von Sensorinformationen für die ausgewählten Sensoren an den Client.
  • In Beispiel 16 kann der Gegenstand von Beispiel 15 das Abfragen einer Datenbank umfassen, um zu bestimmen, welche der Mehrzahl von Sensoren entlang der geplanten Route sind.
  • In Beispiel 17 kann der Gegenstand eines der Beispiele 15 bis 16 das Bereitstellen eines Datenfeeds eines Sensors der ausgewählten Sensoren an den Client umfassen.
  • In Beispiel 18 kann der Gegenstand eines der Beispiele 15 bis 17 das Zuweisen eines Kanals eines Datenfeeds von einem Sensor der ausgewählten Sensoren an den Client umfassen.
  • In Beispiel 19 kann der Gegenstand eines der Beispiele 15 bis 18 das Zurückhalten von Sensorinformationen für einen Sensor der Mehrzahl von Sensoren, auf die der Client nicht zugreifen kann, umfassen.
  • In Beispiel 20 kann der Gegenstand eines der Beispiele 15 bis 19 das Empfangen einer Registrierungsnachricht von einem Sensor der Mehrzahl von Sensoren, wobei die Registrierungsnachricht jeweilige Sensorinformationen für den Sensor aufweist; und und das Erstellen eines Eintrags in der Datenbank für den Sensor, wobei der Eintrag die Sensorinformationen aufweist, umfassen.
  • In Beispiel 21 kann der Gegenstand eines der Beispiele 15 bis 20 umfassen, dass die Sensorinformationen, die vom Sensor am Datenserver empfangen werden, wenigstens eines von einem Standort, einer Orientierung oder einem Bereich aufweisen.
  • In Beispiel 22 kann der Gegenstand eines der Beispiele 15 bis 21 umfassen, dass die Sensorinformationen, die vom Sensor am Datenserver empfangen werden, einen Sensortyp und einen Datentyp aufweisen.
  • In Beispiel 23 kann der Gegenstand eines der Beispiele 15 bis 22 umfassen, dass die Sensorinformationen, die vom Sensor am Datenserver empfangen werden, eine Anwendungsprogrammschnittstelle oder eine Abfrageschnittstelle aufweisen.
  • In Beispiel 24 kann der Gegenstand eines der Beispiele 15 bis 23 das Erstellen einer Karte der Mehrzahl von Sensoren aus der Datenbank umfassen, wobei das Auswählen der ausgewählten Sensoren auf Standorten auf der Karte der Mehrzahl von Sensoren basiert.
  • In Beispiel 25 kann der Gegenstand eines der Beispiele 15 bis 24 umfassen, dass sich wenigstens einer der ausgewählten Sensoren außerhalb eines Detektionsbereichs des Clients befindet.
  • Beispiel 26 umfasst wenigstens ein Medium mit Anweisungen, die, wenn sie auf einer Maschine ausgeführt werden, bewirken, dass die Maschine eines der Verfahren nach Beispielen 15-25 durchführt.
  • Beispiel 27 umfasst eine Einrichtung mit Mitteln zum Durchführen eines der Beispiele 15-25.
  • Beispiel 28 umfasst einen Gegenstand (wie beispielsweise ein Verfahren, Mittel zum Durchführen von Handlungen, ein maschinenlesbares Medium mit Anweisungen, die, wenn sie durch eine Maschine durchgeführt werden, bewirken, dass die Maschine Handlungen durchführt, oder eine Einrichtung zum Durchführen), um eine dynamische Sensorerkennung zu ermöglichen, umfassend: Empfangen einer Registrierungsnachricht von jedem einer Mehrzahl von Sensoren, wobei die Registrierungsnachricht jeweilige Sensorinformationen aufweist; Erstellen eines jeweiligen Eintrags in einer Datenbank für jeden der Mehrzahl von Sensoren, wobei jeder jeweilige Eintrag in der Datenbank die jeweiligen Sensorinformationen des entsprechenden Sensors der Mehrzahl von Sensoren aufweist; und in Reaktion auf eine Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route Abfragen der Datenbank, um Sensoren der Mehrzahl von Sensoren basierend auf der Anforderung auszuwählen.
  • In Beispiel 29 kann der Gegenstand von Beispiel 28 das Erstellen einer Karte der Mehrzahl von Sensoren aus der Datenbank; und Auswählen der Sensoren aus der Karte umfassen.
  • In Beispiel 30 kann der Gegenstand eines der Beispiele 28 bis 29 umfassen, dass die Registrierungsnachricht wenigstens eines von einem Sensortyp, einem Datentyp, einem Standort, einer Orientierung, einem Bereich, einer Anwendungsprogrammschnittstelle oder einer Abfrageschnittstelle aufweist.
  • Beispiel 31 umfasst wenigstens ein Medium mit Anweisungen, die, wenn sie auf einer Maschine ausgeführt werden, bewirken, dass die Maschine eines der Verfahren nach Beispielen 28-30 durchführt.
  • Beispiel 32 umfasst eine Einrichtung mit Mitteln zum Durchführen eines der Beispiele 28-30.
  • Beispiel 33 umfasst einen Gegenstand (wie beispielsweise eine Vorrichtung, Einrichtung oder Maschine), um eine dynamische Sensorerkennung zu ermöglichen, umfassend: Mittel zum Empfangen einer Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route von einem Client, wobei der Client eine autonome Vorrichtung aufweist, die in der Lage ist, ohne menschliche Eingabe in einer Umgebung zu navigieren; Mittel zum Auswählen von Sensoren einer Mehrzahl von Sensoren entlang der geplanten Route; und Mittel zum Bereitstellen von Sensorinformationen für die ausgewählten Sensoren an den Client.
  • In Beispiel 34 kann der Gegenstand von Beispiel 33 Mittel zum Abfragen einer Datenbank umfassen, um zu bestimmen, welche der Mehrzahl von Sensoren entlang der geplanten Route sind.
  • In Beispiel 35 kann der Gegenstand eines der Beispiele 33 bis 34 Mittel zum Bereitstellen eines Datenfeeds eines Sensors der ausgewählten Sensoren an den Client umfassen.
  • In Beispiel 36 kann der Gegenstand eines der Beispiele 33 bis 35 Mittel zum Zuweisen eines Kanals eines Datenfeeds von einem Sensor der ausgewählten Sensoren an den Client umfassen.
  • In Beispiel 37 kann der Gegenstand eines der Beispiele 33 bis 36 Mittel zum Zurückhalten von Sensorinformationen für einen Sensor der Mehrzahl von Sensoren, auf die der Client nicht zugreifen kann, umfassen.
  • In Beispiel 38 kann der Gegenstand eines der Beispiele 33 bis 37 Mittel zum Empfangen einer Registrierungsnachricht von einem Sensor der Mehrzahl von Sensoren, wobei die Registrierungsnachricht jeweilige Sensorinformationen für den Sensor aufweist; und Mittel zum Erstellen eines Eintrags in der Datenbank für den Sensor, wobei der Eintrag die Sensorinformationen aufweist, umfassen.
  • In Beispiel 39 kann der Gegenstand eines der Beispiele 33 bis 38 umfassen, dass die Sensorinformationen, die vom Sensor am Datenserver empfangen werden, wenigstens eines von einem Standort, einer Orientierung oder einem Bereich aufweisen.
  • In Beispiel 40 kann der Gegenstand eines der Beispiele 33 bis 39 umfassen, dass die Sensorinformationen, die vom Sensor am Datenserver empfangen werden, einen Sensortyp und einen Datentyp aufweisen.
  • In Beispiel 41 kann der Gegenstand eines der Beispiele 33 bis 40 umfassen, dass die Sensorinformationen, die vom Sensor am Datenserver empfangen werden, eine Anwendungsprogrammschnittstelle oder eine Abfrageschnittstelle aufweisen.
  • In Beispiel 42 kann der Gegenstand eines der Beispiele 33 bis 41 Mittel zum Erstellen einer Karte der Mehrzahl von Sensoren aus der Datenbank umfassen, wobei das Auswählen der ausgewählten Sensoren auf Standorten auf der Karte der Mehrzahl von Sensoren basiert.
  • In Beispiel 43 kann der Gegenstand eines der Beispiele 33 bis 42 umfassen, dass sich wenigstens einer der ausgewählten Sensoren außerhalb eines Detektionsbereichs des Clients befindet.
  • Beispiel 44 umfasst einen Gegenstand (wie beispielsweise eine Vorrichtung, Einrichtung oder Maschine), um eine dynamische Sensorerkennung zu ermöglichen, umfassend: Mittel zum Empfangen einer Registrierungsnachricht von jedem einer Mehrzahl von Sensoren, wobei die Registrierungsnachricht jeweilige Sensorinformationen aufweist; Mittel zum Erstellen eines jeweiligen Eintrags in einer Datenbank für jeden der Mehrzahl von Sensoren, wobei jeder jeweilige Eintrag in der Datenbank die jeweiligen Sensorinformationen des entsprechenden Sensors der Mehrzahl von Sensoren aufweist; und Mittel zum Abfragen der Datenbank, um Sensoren der Mehrzahl von Sensoren basierend auf der Anforderung in Reaktion auf eine Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route auszuwählen.
  • In Beispiel 45 kann der Gegenstand von Beispiel 44 Mittel zum Erstellen einer Karte der Mehrzahl von Sensoren aus der Datenbank; und Mittel zum Auswählen der Sensoren aus der Karte umfassen.
  • In Beispiel 46 kann der Gegenstand eines der Beispiele 43 bis 44 umfassen, dass die Registrierungsnachricht wenigstens eines von einem Sensortyp, einem Datentyp, einem Standort, einer Orientierung, einem Bereich, einer Anwendungsprogrammschnittstelle oder einer Abfrageschnittstelle aufweist.
  • Die obige detaillierte Beschreibung schließt Bezugnahmen auf die beigefügten Zeichnungen ein, die einen Teil der detaillierten Beschreibung bilden. Die Zeichnungen zeigen zur Veranschaulichung spezielle Ausführungsformen, die umgesetzt werden können. Diese Ausführungsformen werden hierin auch als „Beispiele“ bezeichnet. Derartige Beispiele können Elemente zusätzlich zu den gezeigten oder beschriebenen umfassen. Es werden jedoch auch Beispiele in Betracht gezogen, die die gezeigten oder beschriebenen Elemente umfassen. Darüber hinaus werden auch Beispiele in Betracht gezogen, die eine beliebige Kombination oder Permutation der gezeigten oder beschriebenen Elemente (oder eines oder mehrerer Aspekte davon) entweder in Bezug auf ein bestimmtes Beispiel (oder einen oder mehrere Aspekte davon) oder in Bezug auf andere Beispiele (oder einen oder mehrere Aspekte davon), die hierin gezeigt oder beschrieben sind, verwenden.
  • Veröffentlichungen, Patente und Patentdokumente, auf die in diesem Dokument Bezug genommen wird, sind hierin in ihrer Gesamtheit durch Bezugnahme aufgenommen, wie wenn sie einzeln durch Bezugnahme aufgenommen wären. Im Fall inkonsistenter Verwendungen zwischen diesem Dokument und den durch Bezugnahme aufgenommenen Dokumenten sollte die Verwendung in der/den aufgenommenen Referenz(en) ergänzend zu der dieses Dokuments betrachtet werden; bei unvereinbaren Inkonsistenzen ist die Verwendung in diesem Dokument bestimmend.
  • In diesem Dokument werden die Ausdrücke „ein“ oder „eine“ verwendet, wie es in Patentdokumenten üblich ist, um eines oder mehr als eines zu umfassen, unabhängig von beliebigen anderen Fällen oder Verwendungen von „wenigstens ein(e)“ oder „ein(e) oder mehrere“. In diesem Dokument wird der Ausdruck „oder“ verwendet, um auf ein nicht ausschließendes „oder“ Bezug zu nehmen, derart, dass „A oder B“ „A aber nicht B“, „B aber nicht A“ und „A und B“ umfasst, sofern nicht anders angegeben. In den beigefügten Ansprüchen werden die Ausdrücke „einschließlich“ und „in welchem“ als Äquivalente der entsprechenden Ausdrücke „umfassen(d)“ und „wobei“ verwendet. Außerdem sind in den folgenden Ansprüchen die Ausdrücke „einschließlich“ und „umfassen(d)“ offene Ausdrücke, das heißt, ein System, eine Vorrichtung, ein Gegenstand oder ein Verfahren, welche/r/s Elemente umfasst, die über die nach einem solchen Ausdruck in einem Anspruch aufgeführten Elemente hinausgehen, wird als noch in den Schutzbereich des Anspruchs fallend erachtet. Darüber hinaus werden in den nachfolgenden Ansprüchen die Begriffe „erste“, „zweite“ und „dritte“ usw. lediglich als Kennzeichnungen verwendet und sollen keine numerische Reihenfolge für ihre Objekte vorschlagen.
  • Die obige Beschreibung soll der Veranschaulichung dienen und nicht einschränkend sein. Beispielsweise können die oben beschriebenen Beispiele (oder ein oder mehrere Aspekte davon) mit anderen in Kombination verwendet werden. Andere Ausführungsformen können beispielsweise von Durchschnittsfachleuten auf dem Gebiet nach Durchsicht der obigen Beschreibung verwendet werden. Die Zusammenfassung soll es dem Leser ermöglichen, schnell die Art der technischen Offenbarung zu ermitteln, und wird mit dem Verständnis vorgelegt, dass sie nicht dazu verwendet wird, den Schutzbereich oder die Bedeutung der Ansprüche auszulegen oder einzuschränken. Außerdem können in der obigen detaillierten Beschreibung verschiedene Merkmale miteinander gruppiert werden, um die Offenbarung zu straffen. Die Ansprüche können jedoch hierin offenbarte Merkmale möglicherweise nicht darlegen, da Ausführungsformen eine Teilmenge der Merkmale aufweisen können. Ferner können Ausführungsformen weniger Merkmale als die in einem bestimmten Beispiel offenbarten aufweisen. Folglich sind die nachfolgenden Ansprüche hiermit in die detaillierte Beschreibung aufgenommen, wobei ein Anspruch für sich als eine separate Ausführungsform steht. Der Schutzbereich der hierin offenbarten Ausführungsformen soll unter Bezugnahme auf die beigefügten Ansprüche, zusammen mit dem Schutzbereich von Äquivalenten, die derartigen Ansprüchen zustehen, bestimmt werden.

Claims (25)

  1. Vorrichtung zum Ermöglichen einer dynamischen Sensorerkennung, umfassend: eine autonome Vorrichtung mit einem Sendeempfänger, wobei die autonome Vorrichtung in der Lage ist, unter Verwendung von Sensordaten von einem aktuellen Standort zu einem Zielstandort zu navigieren; eine Serverkommunikationsschnittstelle zum Steuern des Sendeempfängers, um eine Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route bereitzustellen und um jeweilige Sensorinformationen für jeden von einem Satz ausgewählter Sensoren zu empfangen, die von einem Datenserver basierend auf der Anforderung ausgewählt werden; eine Sensorkommunikationsschnittstelle zum Steuern des Sendeempfängers, um einen Datenfeed eines Sensors des Satzes ausgewählter Sensoren entlang der geplanten Route basierend auf Sensorinformationen, die dem Sensor entsprechen, zu abonnieren; und eine Hindernisvermeidungsschnittstelle zum Analysieren des Datenfeeds, um zu bestimmen, ob mit der geplanten Route fortgefahren werden soll.
  2. Vorrichtung nach Anspruch 1, wobei die Anforderung ferner einen gewünschten Sensortyp aufweist, wobei der Satz ausgewählter Sensoren, die vom Datenserver ausgewählt werden, ferner auf dem gewünschten Sensortyp basiert.
  3. Vorrichtung nach Anspruch 1, wobei die Serverkommunikationsschnittstelle in Reaktion auf die Detektion eines Hindernisses durch die Hindernisvermeidungsschnittstelle den Sendeempfänger steuert, um eine zweite Anforderung von Sensorinformationen für Sensoren entlang einer zweiten geplanten Route bereitzustellen, und jeweilige Sensorinformationen für jeden von einem zweiten Satz ausgewählter Sensoren empfängt, die basierend auf der zweiten Anforderung vom Datenserver ausgewählt werden.
  4. Vorrichtung nach Anspruch 1, wobei die Sensorinformationen für den Sensor vom Satz ausgewählter Sensoren wenigstens eine von einer Anwendungsprogrammschnittstelle oder einer Abfrageschnittstelle aufweisen.
  5. Vorrichtung nach Anspruch 1, wobei sich wenigstens einer vom Satz ausgewählter Sensoren außerhalb eines Detektionsbereichs des Clients befindet.
  6. System zum Ermöglichen einer dynamischen Sensorerkennung, umfassend: eine Vorrichtungsschnittstelle zum Steuern eines Sendeempfängers, um eine Anforderung der Sensorinformationen für Sensoren entlang einer geplanten Route von einer Vorrichtung zu empfangen, die eine autonome Vorrichtung aufweist, die in der Lage ist, unter Verwendung von Sensordaten von einem aktuellen Standort zu einem Zielstandort zu navigieren, wobei die Vorrichtungsschnittstelle den Sendeempfänger ferner steuert, um dem Client Sensorinformationen für jeden von einem Satz ausgewählter Sensoren bereitzustellen; und ein Sensorauswahlmodul zum Auswählen des Satzes ausgewählter Sensoren einer Mehrzahl von Sensoren entlang der geplanten Route in Reaktion auf die Anforderung.
  7. System nach Anspruch 6, wobei die Anforderung ferner einen gewünschten Sensortyp aufweist, wobei das Sensorauswahlmodul den Satz von Sensoren der Mehrzahl von Sensoren entlang der geplanten Route basierend auf dem gewünschten Sensortyp auswählt.
  8. System nach Anspruch 6, wobei die Vorrichtungsschnittstelle zum Steuern des Sendeempfängers eine zweite Anforderung von Sensorinformationen für Sensoren entlang einer zweiten geplanten Route empfängt und dem Client die Sensorinformationen für jeden von einem zweiten Satz ausgewählter Sensoren bereitstellt, wobei das Sensorauswahlmodul einen zweiten Satz ausgewählter Sensoren der Mehrzahl von Sensoren entlang der zweiten geplanten Route in Reaktion auf die zweite Anforderung auswählt.
  9. System nach Anspruch 6, ferner umfassend eine Sensorkommunikationsschnittstelle zum Steuern des Sendeempfängers, um die Sensorinformationen von jedem der Mehrzahl von Sensoren zu empfangen, wobei die Sensorinformationen von einem Sensor der Mehrzahl von Sensoren wenigstens eines von einem Standort, einer Orientierung oder einem Bereich aufweisen.
  10. System nach Anspruch 9, wobei die Sensorinformationen vom Sensor der Mehrzahl von Sensoren einen Sensortyp und einen Datentyp aufweisen.
  11. System nach Anspruch 9, wobei die Sensorinformationen vom Sensor der Mehrzahl von Sensoren eine Anwendungsprogrammschnittstelle oder eine Abfrageschnittstelle aufweisen.
  12. System nach Anspruch 6, wobei das Sensorauswahlmodul eine Karte der Mehrzahl von Sensoren aus der Datenbank erstellt und den Satz ausgewählter Sensoren basierend auf Standorten auf der Karte der Mehrzahl von Sensoren auswählt.
  13. System nach Anspruch 6, wobei das Sensorauswahlmodul Sensorinformationen für einen Sensor der Mehrzahl von Sensoren zurückhält, auf die der Client nicht zugreifen kann.
  14. System nach Anspruch 6, wobei das Sensorauswahlmodul eine Liste verfügbarer Kanäle für einen Sensor der Mehrzahl von Sensoren führt.
  15. Verfahren zum Ermöglichen einer dynamischen Sensorerkennung, umfassend: Empfangen einer Anforderung von Sensorinformationen für Sensoren entlang einer geplanten Route von einem Client, wobei der Client eine autonome Vorrichtung aufweist, die in der Lage ist, ohne menschliche Eingabe in einer Umgebung zu navigieren; Auswählen von Sensoren einer Mehrzahl von Sensoren entlang der geplanten Route; und Bereitstellen von Sensorinformationen für die ausgewählten Sensoren an den Client.
  16. Verfahren nach Anspruch 15, ferner umfassend das Abfragen einer Datenbank, um zu bestimmen, welche der Mehrzahl von Sensoren entlang der geplanten Route sind.
  17. Verfahren nach Anspruch 15, ferner umfassend das Bereitstellen eines Datenfeeds eines Sensors der ausgewählten Sensoren an den Client.
  18. Verfahren nach Anspruch 15, ferner umfassend das Zuweisen eines Kanals eines Datenfeeds von einem Sensor der ausgewählten Sensoren an den Client.
  19. Verfahren nach Anspruch 15, ferner umfassend das Zurückhalten von Sensorinformationen für einen Sensor der Mehrzahl von Sensoren, auf die der Client nicht zugreifen kann.
  20. Verfahren nach Anspruch 15, ferner umfassend: Empfangen einer Registrierungsnachricht von einem Sensor der Mehrzahl von Sensoren, wobei die Registrierungsnachricht jeweilige Sensorinformationen für den Sensor aufweist; und Erstellen eines Eintrags in der Datenbank für den Sensor, wobei der Eintrag die Sensorinformationen aufweist.
  21. Verfahren nach Anspruch 20, wobei die Sensorinformationen, die vom Sensor am Datenserver empfangen werden, wenigstens eines von einem Standort, einer Orientierung oder einem Bereich aufweisen.
  22. Verfahren nach Anspruch 20, wobei die Sensorinformationen, die vom Sensor am Datenserver empfangen werden, einen Sensortyp und einen Datentyp aufweisen.
  23. Verfahren nach Anspruch 20, wobei die Sensorinformationen, die vom Sensor am Datenserver empfangen werden, eine Anwendungsprogrammschnittstelle oder eine Abfrageschnittstelle aufweisen.
  24. Wenigstens ein Medium mit Anweisungen, die, wenn sie auf einer Maschine ausgeführt werden, bewirken, dass die Maschine eines der Verfahren nach Ansprüchen 15-23 durchführt.
  25. Einrichtung mit Mitteln zum Durchführen eines der Verfahren nach Ansprüchen 15-23.
DE112017001723.8T 2016-03-31 2017-02-28 Ermöglichen von automatischer sensorerkennung in autonomen vorrichtungen Pending DE112017001723T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/087,313 2016-03-31
US15/087,313 US9817403B2 (en) 2016-03-31 2016-03-31 Enabling dynamic sensor discovery in autonomous devices
PCT/US2017/019955 WO2017172188A1 (en) 2016-03-31 2017-02-28 Enabling dynamic sensor discovery in autonomous devices

Publications (1)

Publication Number Publication Date
DE112017001723T5 true DE112017001723T5 (de) 2018-12-20

Family

ID=59958687

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112017001723.8T Pending DE112017001723T5 (de) 2016-03-31 2017-02-28 Ermöglichen von automatischer sensorerkennung in autonomen vorrichtungen

Country Status (4)

Country Link
US (2) US9817403B2 (de)
CN (1) CN108700878B (de)
DE (1) DE112017001723T5 (de)
WO (1) WO2017172188A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9817403B2 (en) * 2016-03-31 2017-11-14 Intel Corporation Enabling dynamic sensor discovery in autonomous devices
DE102016209568B3 (de) * 2016-06-01 2017-09-21 Volkswagen Aktiengesellschaft Verfahren, Vorrichtungen und Computerprogramme zum Erfassen von Messergebnissen von mobilen Geräten
DE102017200100B3 (de) * 2017-01-05 2018-03-15 Volkswagen Aktiengesellschaft Verfahren zur kollektiven Erfassung von Daten in einem Mobilfunknetz sowie Datenerfassungsrechner und Mobilfunknetz-Verwaltungseinheit zur Verwendung bei dem Verfahren
US10386856B2 (en) 2017-06-29 2019-08-20 Uber Technologies, Inc. Autonomous vehicle collision mitigation systems and methods
US10065638B1 (en) 2017-08-03 2018-09-04 Uber Technologies, Inc. Multi-model switching on a collision mitigation system
US11928641B2 (en) * 2020-09-30 2024-03-12 International Business Machines Corporation Self adaptive delivery based on simulated disruption

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2544065B1 (de) * 2005-12-02 2017-02-08 iRobot Corporation Robotersystem
US9070101B2 (en) * 2007-01-12 2015-06-30 Fatdoor, Inc. Peer-to-peer neighborhood delivery multi-copter and method
US9373149B2 (en) * 2006-03-17 2016-06-21 Fatdoor, Inc. Autonomous neighborhood vehicle commerce network and community
US9163962B2 (en) * 2006-06-16 2015-10-20 Fedex Corporate Services, Inc. Methods and systems for providing sensor data using a sensor web
US8965578B2 (en) * 2006-07-05 2015-02-24 Battelle Energy Alliance, Llc Real time explosive hazard information sensing, processing, and communication for autonomous operation
US20100063652A1 (en) * 2008-09-11 2010-03-11 Noel Wayne Anderson Garment for Use Near Autonomous Machines
US8478493B2 (en) 2008-09-11 2013-07-02 Deere & Company High integrity perception program
US8126642B2 (en) 2008-10-24 2012-02-28 Gray & Company, Inc. Control and systems for autonomously driven vehicles
US8125328B2 (en) * 2009-02-20 2012-02-28 Verizon Patent And Licensing Inc. System and method for providing managed remote monitoring services
KR101291067B1 (ko) 2009-11-26 2013-08-07 한국전자통신연구원 차량 제어 장치 및 그 자율 주행 방법, 지역 서버 장치 및 그 자율 주행 서비스 방법, 전역 서버 장치 및 그 자율 주행 서비스 방법
EP2564323B1 (de) * 2010-04-29 2015-11-04 Hewlett Packard Development Company, L.P. System und verfahren zur informationsverfolgung
US8918209B2 (en) * 2010-05-20 2014-12-23 Irobot Corporation Mobile human interface robot
US9043129B2 (en) * 2010-10-05 2015-05-26 Deere & Company Method for governing a speed of an autonomous vehicle
US8589014B2 (en) * 2011-06-01 2013-11-19 Google Inc. Sensor field selection
US9516141B2 (en) * 2013-08-29 2016-12-06 Verizon Patent And Licensing Inc. Method and system for processing machine-to-machine sensor data
US9536056B2 (en) * 2013-08-30 2017-01-03 Verizon Patent And Licensing Inc. Method and system of machine-to-machine vertical integration with publisher subscriber architecture
US9915950B2 (en) * 2013-12-31 2018-03-13 Polysync Technologies, Inc. Autonomous vehicle interface system
US20150202770A1 (en) * 2014-01-17 2015-07-23 Anthony Patron Sidewalk messaging of an autonomous robot
CN103970099A (zh) * 2014-05-05 2014-08-06 华北电力大学 架空输电线路巡检飞行机器人多传感器调度系统及方法
US9939253B2 (en) * 2014-05-22 2018-04-10 Brain Corporation Apparatus and methods for distance estimation using multiple image sensors
US9720418B2 (en) * 2014-05-27 2017-08-01 Here Global B.V. Autonomous vehicle monitoring and control
US9494937B2 (en) * 2014-06-20 2016-11-15 Verizon Telematics Inc. Method and system for drone deliveries to vehicles in route
CN105446338B (zh) * 2015-12-21 2017-04-05 福州华鹰重工机械有限公司 云辅助自动驾驶方法及系统
US9817403B2 (en) 2016-03-31 2017-11-14 Intel Corporation Enabling dynamic sensor discovery in autonomous devices

Also Published As

Publication number Publication date
US10067512B2 (en) 2018-09-04
US9817403B2 (en) 2017-11-14
US20170285656A1 (en) 2017-10-05
US20180067497A1 (en) 2018-03-08
CN108700878A (zh) 2018-10-23
CN108700878B (zh) 2021-11-02
WO2017172188A8 (en) 2018-11-01
WO2017172188A1 (en) 2017-10-05

Similar Documents

Publication Publication Date Title
DE112017001723T5 (de) Ermöglichen von automatischer sensorerkennung in autonomen vorrichtungen
DE102014002150B3 (de) Verfahren zur Ermittlung der absoluten Position einer mobilen Einheit und mobile Einheit
DE202011110851U1 (de) Vorrichtung der Zielführung
DE102020105045A1 (de) Verfahren und vorrichtungen zur erleichterung einer autonomen navigation von robotervorrichtungen
EP3824247A1 (de) Verfahren und system zum bestimmen einer position eines fahrzeugs
DE112017006487T5 (de) Verfahren und vorrichtung zum erzeugen eines suchmusters für einen ereignisort
DE102015110934A1 (de) Mehrziel-Fahrzeugschnittstelle
DE102019122266A1 (de) Systeme und Verfahren zur Parkverwaltung
DE102017213601A1 (de) Verfahren zum Erstellen einer Objektkarte für eine Fabrikumgebung
DE102016003969A1 (de) Verfahren zum Erfassen von Umgebungsdaten mittels mehrerer Kraftfahrzeuge
DE112020001255T5 (de) Tiefes neurales netzwerk mit niedrigem leistungsverbrauch zur gleichzeitigen objekterkennung und semantischen segmentation in bildern auf einem mobilen rechengerät
DE102019122394A1 (de) Verfolgung von intelligenten vorrichtungen in fahrzeugen
DE102019114709A1 (de) Video- und/oder bild-kartenerstellungssystem
DE102021116356A1 (de) Einstellung von zielen in fahrzeugnavigationssystemen basierend auf bildmetadaten von tragbaren elektronischen vorrichtungen und von aufgenommenen bildern unter verwendung von nullklick-navigation
DE102019130104A1 (de) Standortmarkierung für universellen zugriff
DE102021206075A1 (de) Fahrzeuglokalisierung als Mitfahrgelegenheit und Insassenidentifikation für autonome Fahrzeuge
DE112015003801T5 (de) System und verfahren zum automatischen pushen von standortspezifischem inhalt an benutzer
WO2020127236A1 (de) Vorrichtung für ein fahrzeug zum auslagern von rechenvorgängen
DE112017000061T5 (de) Systeme und Verfahren zum Bestimmen eines verbesserten Anwenderstandorts unter Verwendung von realen Kartendaten und Sensordaten
DE102006010955B3 (de) Verfahren zur visuellen Überwachung eines Raumbereiches
EP3611711B1 (de) Verfahren zum klassifizieren von daten betreffend eine parklücke für ein kraftfahrzeug
DE102020213111A1 (de) Verfahren und System zur Bestimmung einer Pose oder Position eines mobilen Endgeräts
DE102020121881A1 (de) Fahrzeugverarbeitungsvorrichtung für arithmetische Operation, Server-Computer und nichtflüchtiges Speichermedium
DE102019219660A1 (de) Verfahren zur Erstellung von Navigationshilfen für Auslieferungsroboter, System für die Erstellung von Navigationshilfen für Auslieferungsroboter
DE102018123056A1 (de) Lokales navigationssystem für fahrzeugnavigation

Legal Events

Date Code Title Description
R081 Change of applicant/patentee

Owner name: KIA CORPORATION, KR

Free format text: FORMER OWNER: INTEL CORPORATION, SANTA CLARA, CALIF., US

Owner name: HYUNDAI MOTOR COMPANY, KR

Free format text: FORMER OWNER: INTEL CORPORATION, SANTA CLARA, CALIF., US

R082 Change of representative

Representative=s name: HOFFMANN - EITLE PATENT- UND RECHTSANWAELTE PA, DE

R012 Request for examination validly filed