Configuración de posición de los dispositivos LoRaWAN - AWS IoT Wireless

Configuración de posición de los dispositivos LoRaWAN

Al agregar su dispositivo a AWS IoT Core para LoRaWAN, puede especificar la información de posición estática, activar opcionalmente el posicionamiento y especificar un destino. El destino describe la regla de IoT que procesa la información de posición del dispositivo y enruta la posición actualizada a Amazon Location Service. Después de configurar la posición del dispositivo, los datos de posición se muestran en un mapa de ubicaciones de Amazon con la información de precisión y el destino especificados.

Puede configurar la posición de su dispositivo mediante la AWS Management Console, la API AWS IoT Wireless o la AWS CLI.

Si activa el posicionamiento, debe especificar el puerto del marco de geolocalización para comunicar los datos de escaneo por wifi y GNSS del dispositivo a AWS IoT Core para LoRaWAN. La información de posición se comunica a AWS IoT Core para LoRaWAN mediante este puerto de marco.

La especificación LoRaWAN proporciona un campo de entrega de datos (FRMPayload) y un campo de puerto (FPort) para distinguir entre los diferentes tipos de mensajes. Para comunicar la información de posición, puede especificar un valor entre 1 y 223 para el puerto de marco. FPort 0 está reservado para los mensajes MAC, FPort 224 está reservado para las pruebas de conformidad MAC y los puertos 225-255 están reservados para futuras ampliaciones de aplicaciones estandarizadas.

Cuando se agrega un destino, se crea una regla de AWS IoT para enrutar los datos a Amazon Location Service mediante el motor de reglas. A continuación, la información de posición actualizada se muestra en un mapa de ubicaciones de Amazon. Si no ha activado el posicionamiento, el destino envía los datos de posición al actualizarse las coordenadas de posición estáticas del dispositivo.

El siguiente código muestra el formato del mensaje de enlace ascendente enviado desde AWS IoT Core para LoRaWAN con la información de posición, la precisión, la configuración del solucionador y los metadatos inalámbricos. Los campos resaltados a continuación son opcionales. Si no hay información de precisión vertical, el valor es null.

{ // Position configuration parameters for given wireless device "WirelessDeviceId": "5b58245e-146c-4c30-9703-0ca942e3ff35", // Position information for a device in GeoJSON format. Altitude // is optional. If no vertical accuracy information is available // or positioning isn't activated, the value is set to null. // The position information coordinates are listed in the order // [longitude, latitude, altitude]. "coordinates": [33.33000183105469, -22.219999313354492, 99.0], "type": "Point", "properties": { "horizontalAccuracy": number, "verticalAccuracy": number", "timestamp": "2022-08-19T03:08:35.061Z" }, //Parameters controlled by AWS IoT Core para LoRaWAN "WirelessMetadata": { "LoRaWAN": { "ADR": false, "Bandwidth": 125, "ClassB": false, "CodeRate": "4/5", "DataRate": "0", "DevAddr": "00b96cd4", "DevEui": "58a0cb000202c99", "FOptLen": 2, "FCnt": 1, "Fport": 136, "Frequency": "868100000", "Gateways": [ { "GatewayEui": "80029cfffe5cf1cc", "Snr": -29, "Rssi": 9.75 } ], "MIC": "7255cb07", "MType": "UnconfirmedDataUp", "Major": "LoRaWANR1", "Modulation": "LORA", "PolarizationInversion": false, "SpreadingFactor": 12, "Timestamp": "2021-05-03T03:24:29Z" } } }

Configuración de la posición de los dispositivos mediante la consola

Para configurar y administrar la posición de sus dispositivos mediante la AWS Management Console, primero inicie sesión en la consola y luego vaya a la página central Dispositivos de la consola de AWS IoT.

Agregar la información de posición

Para agregar la información de posición a su dispositivo:

  1. En la página central de Dispositivos, seleccione Agregar dispositivo inalámbrico.

  2. Introduzca la especificación del dispositivo inalámbrico, los perfiles de dispositivo y servicio, y el destino que define la regla de IoT para enrutar los datos a otros Servicio de AWS. Para obtener más información, consulte Incorporar dispositivos a AWS IoT Core para LoRaWAN.

  3. Introduzca la información de posición, active la geolocalización si lo desea y especifique el destino de los datos de posición que desee utilizar para enrutar los mensajes.

    • Información de posición

      Especifique los datos de posición del dispositivo mediante las coordenadas de latitud y longitud y una coordenada de altitud opcional. La información de posición se basa en el sistema de coordenadas WGS84.

    • Geolocalización

      Active el posicionamiento si desea que AWS IoT Core para LoRaWAN utilice la geolocalización para calcular la posición del dispositivo. Utiliza solucionadores GNSS y Wi-Fi de terceros para identificar la posición de su dispositivo en tiempo real.

      Para introducir la información de geolocalización, seleccione Activar posicionamiento e introduzca el puerto del marco de geolocalización al que se comunican los datos escaneados por GNSS y wifi a AWS IoT Core para LoRaWAN. Verá los puertos FPorts predeterminados cumplimentados como referencia. Sin embargo, puede elegir un valor diferente entre 1 y 223.

    • Destino de los datos de posición

      Elija un destino para describir la regla de AWS IoT que procesa los datos de posición del dispositivo y los reenvía a AWS IoT Core para LoRaWAN. Utilice este destino solo para enrutar los datos de posición. Debe ser diferente del destino que utiliza para enrutar los datos del dispositivo a otros Servicio de AWS.

Ver la configuración de posición del dispositivo

Después de configurar la posición de su dispositivo, AWS IoT Core para LoRaWAN crea un mapa de ubicaciones de Amazon llamado iotwireless.map. Puede ver este mapa en la página de detalles de su dispositivo, en la pestaña Posición. En función de las coordenadas de posición que haya especificado o de la posición calculada por los solucionadores de terceros, la posición de su dispositivo se mostrará como un marcador en el mapa. Puede acercar o alejar la imagen para ver claramente la posición de su dispositivo en el mapa. En la página de detalles del dispositivo, en la pestaña Posición, también verá la información de precisión, la marca temporal en la que se determinó la posición del dispositivo y el destino de los datos de posición que se especificaron.

nota

Si no ha activado los mapas de Amazon Location Service, verá un mensaje indicándole que tendrá que utilizar Amazon Location Service para acceder al mapa y ver la posición. Si utiliza los mapas de Amazon Location Service, se le cobrarán cargos adicionales en su Cuenta de AWS. Para más información, consulte Precios de AWS IoT Core.

El mapa, iotwireless.map, actúa como un origen de datos cartográficos a los que se accede mediante operaciones de la API Get, como GetMapTile. Para obtener información sobre las API Get que se utilizan con los mapas, consulte la Referencia de API de Amazon Location Service.

Para obtener información adicional sobre este mapa, vaya a la consola de Amazon Location Service, elija maps y, a continuación, elija iotwireless.map. Para obtener más información, consulte la sección Mapas en la Guía para desarrolladores de Amazon Location Service.

Actualizar la configuración de posición del dispositivo

Para cambiar la configuración de posición del dispositivo, en la página de detalles del dispositivo, elija Editar y, a continuación, actualice la información de posición, cualquier configuración de geolocalización y el destino.

nota

La información sobre los datos históricos de posición no está disponible. Al actualizar las coordenadas de posición del dispositivo, se sobrescriben los datos de posición registrados anteriormente. Una vez que haya actualizado la posición, en la pestaña Posición de los detalles del dispositivo verá la información de la nueva posición. El cambio en la marca temporal indica que corresponde a la última posición conocida del dispositivo.

Configurar la posición del dispositivo mediante la API

Puede especificar la información de posición, configurar la posición del dispositivo y activar la geolocalización opcional mediante la API AWS IoT Wireless o la AWS CLI.

importante

Las acciones de la API UpdatePosition, GetPosition, PutPositionConfiguration, GetPositionConfiguration y ListPositionConfigurations ya no se admiten. En su lugar, las llamadas para actualizar y recuperar la información de posición deberían utilizar las operaciones de la API GetResourcePosition y UpdateResourcePosition.

Agregar la información y la configuración de posición

Para agregar la información de posición de un dispositivo inalámbrico determinado, especifique las coordenadas mediante la operación de la API UpdateResourcePosition o el comando de la CLI update-resource-position. Especifique WirelessDevice como ResourceType, el ID del dispositivo inalámbrico que se va a actualizar como ResourceIdentifier y la información de posición como carga de GeoJSON.

aws iotwireless update-resource-position \ --resource-type WirelessDevice \ --resource-id "1ffd32c8-8130-4194-96df-622f072a315f" \ --position [33.33, -33.33, 10.0]

A continuación se muestra el contenido del archivo deviceposition.json. Para especificar los valores de FPort y enviar los datos de geolocalización, utilice el objeto de posicionamiento con las operaciones de la API CreateWirelessDevice and UpdateWirelessDevice.

Contenido de deviceposition.json

{ "type": "Point", "coordinates": [33.3318, -22.2155, 13.123], "properties": { "verticalAccuracy": 707, "horizontalAccuracy": "timestamp": "2018-11-30T18:35:24Z" } }

Este comando no proporciona ningún resultado. Para ver la información de posición especificada, utilice la operación de la API GetResourcePosition.

Obtener la información y la configuración de posición

Para obtener la información de posición de un dispositivo inalámbrico determinado, utilice la API GetResourcePosition o el comando de la CLI get-resource-position. Especifique WirelessDevice como resourceType y proporcione el ID del dispositivo inalámbrico como resourceIdentifier

aws iotwireless get-resource-position \ --resource-type WirelessDevice \ --resource-id "1ffd32c8-8130-4194-96df-622f072a315f"

Al ejecutar este comando, se muestra la información de posición del dispositivo inalámbrico como una carga de GeoJSON. Verá información sobre las coordenadas de posición, el tipo de ubicación y las propiedades, que puede incluir la información de precisión y la marca temporal que corresponde a la última posición conocida del dispositivo.

{ "type": "Point", "coordinates": [33.3318, -22.2155, 13.123], "properties": { "verticalAccuracy": 707, "horizontalAccuracy": 389, "horizontalConfidenceLevel": 0.68, "verticalConfidenceLevel": 0.68, "timestamp": "2018-11-30T18:35:24Z" } }