Location Solver und Geräte-Payload - AWS IoT Core

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Location Solver und Geräte-Payload

Location Solver sind Algorithmen, mit denen der Standort Ihrer IoT-Geräte ermittelt werden kann. AWS IoT Core Device Location unterstützt die folgenden Location Solver. Sie sehen Beispiele für das Format der JSON-Nutzlast für diese Messungstypen, die vom Solver unterstützten Geräte und die Art und Weise, wie der Standort aufgelöst wird.

Um den Gerätestandort zu ermitteln, geben Sie mindestens einen dieser Messungsdatentypen an. Für alle Messungsdaten zusammen wird ein einziger, aufgelöster Standort zurückgegeben.

WLAN-basierter Solver

Verwenden Sie den WLAN-basierten Solver, um den Standort anhand der Scaninformationen von WLAN-Zugangspunkten zu ermitteln. Der Solver unterstützt die WLAN-Technologie und kann zur Berechnung des Gerätestandorts für allgemeine IoT-Geräte und LoRa WAN-Funkgeräte verwendet werden.

Die LoRa WAN-Geräte müssen über den LoRa Edge-Chipsatz verfügen, der die eingehenden Wi-Fi-Scaninformationen dekodieren kann. LoRa Edge ist eine Plattform mit extrem geringem Stromverbrauch, die einen LoRa Transceiver mit großer Reichweite, einen GNSS-Scanner mit mehreren Konstellationen und einen passiven Wi-Fi-MAC-Scanner für Geolokalisierungsanwendungen integriert. Wenn eine Uplink-Nachricht vom Gerät empfangen wird, werden die Wi-Fi-Scandaten an den Gerätestandort gesendet, und der Standort wird auf der AWS IoT Core Grundlage der Wi-Fi-Scanergebnisse geschätzt. Die dekodierten Informationen werden dann an den WLAN-basierten Solver weitergeleitet, um die Standortinformationen abzurufen.

Der folgende Code zeigt ein Beispiel für die JSON-Nutzlast des Geräts, das die Messungsdaten enthält. Wenn der AWS IoT Core Gerätestandort diese Daten als Eingabe empfängt, sendet es eine HTTP-Anfrage an den Solver-Anbieter, um die Standortinformationen aufzulösen. Geben Sie zum Abrufen der Informationen Werte für die MAC-Adresse und RSS (Received Signal Strength) an. Stellen Sie dazu entweder die JSON-Nutzlast in diesem Format bereit oder verwenden Sie den WiFiAccessPointsObjektparameter des GetPositionEstimateAPI-Vorgangs.

{ "Timestamp": 1664313161, // optional "WiFiAccessPoints": [ { "MacAddress": "A0:EC:F9:1E:32:C1", // required "Rss": -75 // required } ] }

Solver auf Mobilfunkbasis

Sie können den Solver auf Mobilfunkbasis verwenden, um den Standort anhand von Messungsdaten von Mobilfunkmasten aufzulösen. Der Solver unterstützt die folgenden Technologien. Es wird eine einzige aufgelöste Standortinformation abgerufen, auch wenn Sie Messungsdaten aus einer oder allen dieser Technologien einbeziehen.

  • GSM

  • CDMA

  • WCDMA

  • TD-SCDMA

  • LTE

Beispiele für Solver-Nutzlasten auf Mobilfunkbasis

Der folgende Code zeigt Beispiele für die JSON-Nutzlast des Geräts, das die Messungsdaten auf Mobilfunkbasis enthält. Wenn AWS IoT Core Device Location diese Daten als Eingabe empfängt, sendet es eine HTTP-Anfrage an den Solver-Anbieter, um die Standortinformationen aufzulösen. Um die Informationen abzurufen, geben Sie entweder die JSON-Nutzlast in diesem Format in der Konsole an oder geben Werte für den CellTowersParameter des GetPositionEstimateAPI-Vorgangs an. Sie können die Messungsdaten bereitstellen, indem Sie Werte für Parameter angeben, die eine oder alle dieser Mobilfunktechnologien verwenden.

Wenn Sie diese Messungsdaten verwenden, müssen Sie Informationen wie das Netzwerk und die Landesvorwahl des Mobilfunknetzes sowie optionale zusätzliche Parameter, einschließlich Informationen zur lokalen ID, angeben. Der nachfolgende Code zeigt ein Beispiel für das Nutzlastformat. Weitere Informationen zu diesen Parametern finden Sie unter LTE-Objekt.

{ "Timestamp": 1664313161, // optional "CellTowers": { "Lte": [ { "Mcc": int, // required "Mnc": int, // required "EutranCid": int, // required. Make sure that you use int for EutranCid. "Tac": int, // optional "LteLocalId": { // optional "Pci": int, // required "Earfcn": int, // required }, "LteTimingAdvance": int, // optional "Rsrp": int, // optional "Rsrq": float, // optional "NrCapable": boolean, // optional "LteNmr": [ // optional { "Pci": int, // required "Earfcn": int, // required "EutranCid": int, // required "Rsrp": int, // optional "Rsrq": float // optional } ] } ] } }

Wenn Sie diese Messungsdaten verwenden, müssen Sie Informationen wie das Netzwerk und die Landesvorwahl des Mobilfunknetzes, Informationen zur Basisstation und optionale weitere Parameter angeben. Der nachfolgende Code zeigt ein Beispiel für das Nutzlastformat. Weitere Informationen zu diesen Parametern finden Sie unter GSM-Objekt.

{ "Timestamp": 1664313161, // optional "CellTowers": { "Gsm": [ { "Mcc": int, // required "Mnc": int, // required "Lac": int, // required "GeranCid": int, // required "GsmLocalId": { // optional "Bsic": int, // required "Bcch": int, // required }, "GsmTimingAdvance": int, // optional "RxLevel": int, // optional "GsmNmr": [ // optional { "Bsic": int, // required "Bcch": int, // required "RxLevel": int, // optional "GlobalIdentity": { "Lac": int, // required "GeranCid": int // required } } ] } ] }

Wenn Sie diese Messungsdaten verwenden, müssen Sie Informationen wie die Signalleistung und Identifikationsinformationen, Informationen zur Basisstation und optionale weitere Parameter angeben. Der nachfolgende Code zeigt ein Beispiel für das Nutzlastformat. Weitere Informationen zu diesen Parametern finden Sie unter CDMA-Objekt.

{ "Timestamp": 1664313161, // optional "CellTowers": { "Cdma": [ { "SystemId": int, // required "NetworkId": int, // required "BaseStationId": int, // required "RegistrationZone": int, // optional "CdmaLocalId": { // optional "PnOffset": int, // required "CdmaChannel": int, // required }, "PilotPower": int, // optional "BaseLat": float, // optional "BaseLng": float, // optional "CdmaNmr": [ // optional { "PnOffset": int, // required "CdmaChannel": int, // required "PilotPower": int, // optional "BaseStationId": int // optional } ] } ] } }

Wenn Sie diese Messungsdaten verwenden, müssen Sie Informationen wie das Netzwerk und die Landesvorwahl, die Signalleistung und Identifikationsinformationen, Informationen zur Basisstation und optionale weitere Parameter angeben. Der nachfolgende Code zeigt ein Beispiel für das Nutzlastformat. Weitere Informationen zu diesen Parametern finden Sie unter CDMA-Objekt.

{ "Timestamp": 1664313161, // optional "CellTowers": { "Wcdma": [ { "Mcc": int, // required "Mnc": int, // required "UtranCid": int, // required "Lac": int, // optional "WcdmaLocalId": { // optional "Uarfcndl": int, // required "Psc": int, // required }, "Rscp": int, // optional "Pathloss": int, // optional "WcdmaNmr": [ // optional { "Uarfcndl": int, // required "Psc": int, // required "UtranCid": int, // required "Rscp": int, // optional "Pathloss": int, // optional } ] } ] } }

Wenn Sie diese Messungsdaten verwenden, müssen Sie Informationen wie das Netzwerk und die Landesvorwahl, die Signalleistung und Identifikationsinformationen, Informationen zur Basisstation und optionale weitere Parameter angeben. Der nachfolgende Code zeigt ein Beispiel für das Nutzlastformat. Weitere Informationen zu diesen Parametern finden Sie unter CDMA-Objekt.

{ "Timestamp": 1664313161, // optional "CellTowers": { "Tdscdma": [ { "Mcc": int, // required "Mnc": int, // required "UtranCid": int, // required "Lac": int, // optional "TdscdmaLocalId": { // optional "Uarfcn": int, // required "CellParams": int, // required }, "TdscdmaTimingAdvance": int, // optional "Rscp": int, // optional "Pathloss": int, // optional "TdscdmaNmr": [ // optional { "Uarfcn": int, // required "CellParams": int, // required "UtranCid": int, // optional "Rscp": int, // optional "Pathloss": int, // optional } ] } ] } }

IP-Reverse-Lookup-Solver

Sie können den IP-Reverse-Lookup-Solver verwenden, um den Standort mithilfe der IP-Adresse als Eingabe aufzulösen. Der Solver kann die Standortinformationen von Geräten abrufen, die mit ausgestattet wurden. AWS IoT Geben Sie die IP-Adressinformationen in einem Format an, das entweder dem IPv4- oder IPv6-Standardmuster oder dem hexadezimalen komprimierten IPv6-Muster entspricht. Anschließend erhalten Sie die aufgelöste Standortschätzung, einschließlich zusätzlicher Informationen wie Stadt und Land, in denen sich das Gerät befindet.

Anmerkung

Durch die Verwendung des IP-Reverse-Lookup-Solvers erklären Sie sich damit einverstanden, diesen nicht zum Zweck der Identifizierung oder Ortung eines bestimmten Haushalts oder einer Straßenadresse zu verwenden.

Der folgende Code zeigt ein Beispiel für die JSON-Nutzlast des Geräts, das die Messungsdaten enthält. Wenn AWS IoT Core Device Location die in den Messdaten enthaltenen IP-Adressinformationen empfängt, sucht es diese Informationen in der Datenbank des Solver-Anbieters, die dann zur Auflösung der Standortinformationen verwendet wird. Um die Informationen abzurufen, geben Sie entweder die JSON-Payload in diesem Format an oder geben Sie Werte für den IP-Parameter des GetPositionEstimateAPI-Vorgangs an.

Anmerkung

Wenn dieser Solver verwendet wird, werden zusätzlich zu den Koordinaten auch die Stadt, das Bundesland, das Land und die Postleitzahl gemeldet, in denen sich das Gerät befindet. Ein Beispiel finden Sie unter Auflösen des Gerätestandorts (Konsole).

{ "Timestamp": 1664313161, "Ip":{ "IpAddress":"54.240.198.35" } }

GNSS-Solver

Verwenden Sie den GNSS-Solver (Global Navigation Satellite System), um den Gerätestandort anhand der in den GNSS-Scanergebnisnachrichten oder NAV-Nachrichten enthaltenen Informationen abzurufen. Sie können optional zusätzliche GNSS-Unterstützungsinformationen angeben, wodurch die Anzahl der Variablen reduziert wird, die der Solver für die Suche nach Signalen verwenden muss. Durch die Bereitstellung dieser unterstützenden Informationen, zu denen Position, Höhe, Erfassungszeit und Genauigkeitsinformationen gehören, kann der Solver die Satelliten im Sichtfeld leicht identifizieren und den Gerätestandort berechnen.

Dieser Solver kann mit LoRa WAN-Geräten und anderen Geräten verwendet werden, für die eine Bereitstellung vorgesehen ist. AWS IoT Bei allgemeinen IoT-Geräten gilt Folgendes: Wenn die Geräte die Standortschätzung mithilfe von GNSS unterstützen, lösen die Transceiver die Standortinformationen auf, wenn die GNSS-Scaninformationen vom Gerät empfangen werden. Bei LoRa WAN-Geräten müssen die Geräte über den LoRa Edge-Chipsatz verfügen. Wenn eine Uplink-Nachricht vom Gerät empfangen wird, werden die GNSS-Scandaten an das Gerät gesendet AWS IoT Core for LoRaWAN, und der Standort wird anhand der Scanergebnisse der Transceiver geschätzt.

Der folgende Code zeigt ein Beispiel für die JSON-Nutzlast des Geräts, das die Messungsdaten enthält. Wenn AWS IoT Core Device Location die GNSS-Scaninformationen empfängt, die die Nutzdaten in den Messdaten enthalten, verwendet es die Transceiver und alle zusätzlichen enthaltenen Hilfsinformationen, um nach Signalen zu suchen und die Standortinformationen aufzulösen. Um die Informationen abzurufen, geben Sie entweder die JSON-Nutzdaten in diesem Format an oder geben Sie Werte für den GNSS-Parameter der API-Operation an. GetPositionEstimate

Anmerkung

Bevor AWS IoT Core Device Location den Gerätestandort auflösen kann, müssen Sie das Zielbyte aus der Payload entfernen.

{ "Timestamp": 1664313161, // optional "Gnss": { "AssistAltitude": number, // optional "AssistPosition": [ number ], // optional "CaptureTime": number, // optional "CaptureTimeAccuracy": number, // optional "Payload": "string", // required "Use2DSolver": boolean // optional } }