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.
Verwenden Sie den AWS IoT Core Gerätestandort, um die Messdaten Ihrer Geräte zu dekodieren und den Gerätestandort mithilfe von Solvern von Drittanbietern zu ermitteln. Der aufgelöste Standort wird als JSON Geo-Payload mit den Geokoordinaten und Genauigkeitsinformationen generiert. Sie können den Standort Ihres Geräts über die AWS IoT Konsole AWS IoT Wireless API, das oder AWS CLI ermitteln.
Themen
Auflösen des Gerätestandorts (Konsole)
So lösen Sie den Gerätestandort auf (Konsole)
-
Rufen Sie in der AWS IoT Konsole die Seite „Gerätestandort
“ auf. -
Rufen Sie die Nutzlast-Messdaten aus Ihren Geräteprotokollen oder aus den CloudWatch Protokollen ab und geben Sie sie im Abschnitt Position über Payload auflösen ein.
Der folgende Code zeigt ein Beispiel JSON für eine Payload. Die Nutzlast enthält Mobilfunk- und WLAN-Messungsdaten. Wenn Ihre Nutzlast zusätzliche Arten von Messungsdaten enthält, wird der Solver mit der besten Genauigkeit verwendet. Weitere Informationen und Beispiele zur Nutzlast finden Sie unter Location Solver und Geräte-Payload.
Anmerkung
Die JSON Nutzlast muss mindestens einen Typ von Messdaten enthalten.
{ "Timestamp":
1664313161
, "Ip":{ "IpAddress":"54.240.198.35"
}, "WiFiAccessPoints": [{ "MacAddress":"A0:EC:F9:1E:32:C1"
, "Rss":-77
}], "CellTowers": { "Gsm": [{ "Mcc":262
, "Mnc":1
, "Lac":5126
, "GeranCid":16504
, "GsmLocalId": { "Bsic":6
, "Bcch":82
}, "GsmTimingAdvance":1
, "RxLevel":-110
, "GsmNmr": [{ "Bsic":7
, "Bcch":85
, "RxLevel":-100
, "GlobalIdentity": { "Lac":1
, "GeranCid":1
} }] }], "Wcdma": [{ "Mcc":262
, "Mnc":7
, "Lac":65535
, "UtranCid":14674663
, "WcdmaNmr": [{ "Uarfcndl":10786
, "UtranCid":14674663
, "Psc":149
}, { "Uarfcndl":10762
, "UtranCid":14674663
, "Psc":211
} ] }], "Lte": [{ "Mcc":262
, "Mnc":2
, "EutranCid":2898945
, "Rsrp":-50
, "Rsrq":-5
, "LteNmr": [{ "Earfcn":6300
, "Pci":237
, "Rsrp":-60
, "Rsrq":-6
, "EutranCid":2898945
}, { "Earfcn":6300
, "Pci":442
, "Rsrp":-70
, "Rsrq":-7
, "EutranCid":2898945
} ] }] } } -
Um die Standortinformationen aufzulösen, wählen Sie Auflösen aus.
Die Standortinformationen sind vom Typ Blob und werden als Payload zurückgegeben, die das JSON Geo-Format verwendet, ein Format, das für die Kodierung geografischer Datenstrukturen verwendet wird. Die Nutzlast enthält Folgendes:
-
Die WGS84 Geokoordinaten, die die Breiten- und Längengradinformationen enthalten. Sie kann auch eine Höheninformation enthalten.
-
Den Typ der gemeldeten Standortinformationen, z. B. Punkt. Ein Punktpositionstyp stellt die Position als WGS84 Breitengrad und Längengrad dar, kodiert als JSONGeopunkt
. -
Die horizontalen und vertikalen Genauigkeitsinformationen, die den Unterschied in Metern zwischen den von den Solvern geschätzten Standortinformationen und dem tatsächlichen Gerätestandort angeben.
-
Den Zuverlässigkeitsgrad, der die Unsicherheit in der bereitgestellten Standortschätzung angibt. Der Standardwert ist 0,68, was auf eine Wahrscheinlichkeit von 68 % hinweist, dass der tatsächliche Gerätestandort innerhalb des Unsicherheitsradius des geschätzten Standorts liegt.
-
Die Stadt, das Bundesland, das Land und die Postleitzahl, in der sich das Gerät befindet. Diese Informationen werden nur gemeldet, wenn der IP-Reverse-Lookup-Solver verwendet wird.
-
Die Informationen zum Zeitstempel, die dem Datum und der Uhrzeit entspricht, an denen der Standort aufgelöst wurde. Es wird das UNIX-Zeitstempelformat verwendet.
Der folgende Code zeigt ein Beispiel für eine JSON Geo-Payload, die bei der Auflösung des Standorts zurückgegeben wurde.
Anmerkung
Wenn AWS IoT Core Device Location beim Versuch, den Standort zu ermitteln, Fehler meldet, können Sie die Fehler und den Standort beheben. Weitere Informationen finden Sie unter Fehlerbehebung beim Auflösen des Standorts.
{ "coordinates": [ 13.376076698303223, 52.51823043823242 ], "type": "Point", "properties": { "verticalAccuracy": 45, "verticalConfidenceLevel": 0.68, "horizontalAccuracy": 303, "horizontalConfidenceLevel": 0.68, "country": "USA", "state": "CA", "city": "Sunnyvalue", "postalCode": "91234", "timestamp": "2022-11-18T12:23:58.189Z" } }
-
-
Gehen Sie zum Abschnitt Ressourcenstandort und überprüfen Sie die vom AWS IoT Core Gerätestandort gemeldeten Geolokalisierungsinformationen. Sie können die Payload kopieren, um sie mit anderen Anwendungen und Apps zu verwenden. AWS-Service Beispielsweise können Sie Ihre geografischen Standortdaten mithilfe der Ort-Regelaktion an Amazon Location Service senden.
Gerätestandort wird aufgelöst () API
Um den Gerätestandort mithilfe von zu ermitteln AWS IoT Wireless API, verwenden Sie den GetPositionEstimateAPIVorgang oder den get-position-estimateCLIBefehl. Geben Sie die Nutzlast-Messdaten als Eingabe an und führen Sie den API Vorgang aus, um den Gerätestandort zu ermitteln.
Anmerkung
Der GetPositionEstimate
API Vorgang speichert keine Geräte- oder Statusinformationen und kann nicht zum Abrufen historischer Standortdaten verwendet werden. Er führt eine einmalige Operation durch, bei der die Messungsdaten aufgelöst und der geschätzte Standort erstellt werden. Um die Standortinformationen abzurufen, müssen Sie die Nutzlastinformationen jedes Mal angeben, wenn Sie diesen API Vorgang ausführen.
Der folgende Befehl zeigt ein Beispiel dafür, wie der Standort mithilfe dieses API Vorgangs aufgelöst werden kann.
Anmerkung
Wenn Sie den get-position-estimate
CLI Befehl ausführen, müssen Sie die JSON Ausgabedatei als erste Eingabe angeben. In dieser JSON Datei werden die geschätzten Standortinformationen gespeichert, die als Antwort vom CLI im JSON Geo-Format abgerufen wurden. Der folgende Befehl speichert die Standortinformationen beispielsweise im locationout.json
file.
aws iotwireless get-position-estimate
locationout.json
\ --ip IpAddress=""54.240.198.35"
" \ --wi-fi-access-points \ MacAddress="A0:EC:F9:1E:32:C1
",Rss=-75
\ MacAddress="A0:EC:F9:15:72:5E
",Rss=-67
Dieses Beispiel umfasst sowohl Wi-Fi-Zugangspunkte als auch IP-Adressen als Messtypen. AWS IoT Core Der Gerätestandort wählt zwischen dem Wi-Fi-Solver und dem IP-Reverse-Lookup-Solver und wählt den Solver mit der höheren Genauigkeit aus.
Der aufgelöste Standort wird als Payload zurückgegeben, der das JSON Geo-Format verwendet, ein Format, das für die Kodierung geografischer Datenstrukturen verwendet wird. Es wird dann gespeichert im locationout.json
file. Die Nutzdaten enthalten die WGS84 Breiten- und Längengradkoordinaten, Informationen zur Genauigkeit und zum Konfidenzniveau, den Standortdatentyp und den Zeitstempel, zu dem der Standort ermittelt wurde.
{
"coordinates": [
13.37704086303711,
52.51865005493164
],
"type": "Point",
"properties": {
"verticalAccuracy": 707,
"verticalConfidenceLevel": 0.68,
"horizontalAccuracy": 389,
"horizontalConfidenceLevel": 0.68,
"country": "USA",
"state": "CA",
"city": "Sunnyvalue",
"postalCode": "91234",
"timestamp": "2022-11-18T14:03:57.391Z"
}
}
Fehlerbehebung beim Auflösen des Standorts
Wenn Sie versuchen, den Standort zu ermitteln, wird möglicherweise einer der folgenden Fehlercodes angezeigt. AWS IoT Core Der Gerätestandort kann bei der Verwendung des GetPositionEstimate
API Vorgangs zu einem Fehler führen, oder es wird auf die Zeilennummer verwiesen, die dem Fehler in der AWS IoT Konsole entspricht.
-
400-Fehler
Dieser Fehler weist darauf hin, dass das Format der Geräte-Payload nicht anhand des AWS IoT Core Gerätestandorts überprüft werden JSON kann. Der Fehler kann aus folgenden Gründen auftreten:
-
Die JSON Messdaten sind falsch formatiert.
-
Die Nutzlast enthält nur die Informationen zum Zeitstempel.
-
Die Messungsdatenparameter, wie z. B. die IP-Adresse, sind ungültig.
Um diesen Fehler zu beheben, überprüfen Sie, ob Ihre JSON Datei korrekt formatiert ist und Daten von einem oder mehreren Messarten als Eingabe enthält. Wenn die IP-Adresse ungültig ist, finden Sie Informationen darüber, wie Sie eine gültige IP-Adresse zur Behebung des Fehlers angeben können, unter IP-Reverse-Lookup-Solver.
-
-
403-Fehler
Dieser Fehler weist darauf hin, dass Sie nicht berechtigt sind, den API Vorgang auszuführen oder die AWS IoT Konsole zum Abrufen des Gerätestandorts zu verwenden. Um diesen Fehler zu beheben, stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen verfügen, um diese Aktion auszuführen. Dieser Fehler kann auftreten, wenn Ihre AWS Management Console Sitzung oder Ihr AWS CLI Sitzungstoken abgelaufen sind. Um diesen Fehler zu beheben, aktualisieren Sie das Sitzungstoken, um das zu verwenden AWS CLI, oder melden Sie sich ab AWS Management Console und melden Sie sich dann mit Ihren Anmeldeinformationen an.
-
404-Fehler
Dieser Fehler weist darauf hin, dass keine Standortinformationen gefunden oder anhand AWS IoT Core des Gerätestandorts behoben wurden. Der Fehler kann beispielsweise aufgrund unzureichender Daten in der Eingabe von Messungsdaten auftreten. Beispielsweise:
-
Die MAC Adress- oder Mobilfunkmastinformationen sind nicht ausreichend.
-
Die IP-Adresse ist nicht verfügbar, um den Standort zu suchen und abzurufen.
-
Die GNSS Nutzlast ist nicht ausreichend.
Um den Fehler in solchen Fällen zu beheben, überprüfen Sie, ob Ihre Messungsdaten ausreichende Informationen enthalten, um den Gerätestandort zu ermitteln.
-
-
500-Fehler
Dieser Fehler weist darauf hin, dass eine interne Serverausnahme aufgetreten ist, als AWS IoT Core Device Location versucht hat, den Standort aufzulösen. Um diesen Fehler zu beheben, aktualisieren Sie die Sitzung und versuchen Sie erneut, die zu lösenden Messungsdaten zu senden.