Publicar actualizaciones del valor de las propiedades en Amazon DynamoDB - AWS IoT SiteWise

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Publicar actualizaciones del valor de las propiedades en Amazon DynamoDB

Este tutorial presenta una forma práctica de almacenar los datos mediante Amazon DynamoDB, lo que facilita el acceso a los datos históricos de activos sin tener que consultarlos repetidamente. AWS IoT SiteWise API Tras completar este tutorial, puede crear un software personalizado que consuma los datos de sus activos, como un mapa en tiempo real de la velocidad y la dirección del viento en todo un parque eólico. Si desea supervisar y visualizar sus datos sin implementar una solución de software personalizada, consulteSupervise los datos con AWS IoT SiteWise Monitor.

En este tutorial, se basa en la AWS IoT SiteWise demostración que proporciona un conjunto de datos de muestra para un parque eólico. Puede configurar actualizaciones de valores de propiedad desde la demostración del parque eólico para enviar datos, a través de las reglas de AWS IoT Core, a una tabla de DynamoDB que cree. Cuando habilita las actualizaciones del valor de la propiedad, AWS IoT SiteWise envía sus datos a AWS IoT Core en forma de MQTT mensajes. A continuación, defina las reglas AWS IoT principales que realicen acciones, como la acción de DynamoDB, en función del contenido de esos mensajes. Para obtener más información, consulte Interactúa con otros AWS servicios.

Requisitos previos

Necesitará lo siguiente para completar este tutorial:

  • Una AWS cuenta. Si no dispone de una, consulte Configura un Cuenta de AWS.

  • Un ordenador de desarrollo que ejecute Windows, macOS, Linux o Unix para acceder al AWS Management Console. Para obtener más información, consulte Introducción a AWS Management Console.

  • Un usuario de IAM con permisos de administrador.

  • Una demostración de un AWS IoT SiteWise parque eólico en funcionamiento. Al configurar la demostración, esta define los modelos y los activos AWS IoT SiteWise y les transmite datos para representar un parque eólico. Para obtener más información, consulte Usa la AWS IoT SiteWise demo.

Paso 1: AWS IoT SiteWise Configúrelo para publicar las actualizaciones del valor de la propiedad

En este procedimiento, se habilitan las notificaciones de valores de propiedad en las propiedades Wind Speed de los activos de la turbina de demostración. Tras activar las notificaciones del valor de las propiedades, AWS IoT SiteWise publica cada actualización de valores en un MQTT mensaje dirigido a AWS IoT Core.

Para habilitar las notificaciones de actualización de valores de propiedad en propiedades de activos
  1. Inicie sesión en la consola de AWS IoT SiteWise.

  2. Revise los AWS IoT SiteWise puntos finales y las cuotas compatibles y cambie de AWS región si AWS IoT SiteWise es necesario. Cambie a la región en la que esté realizando la AWS IoT SiteWise demostración.

  3. En el panel de navegación izquierdo, elija Assets (activos).

    AWS IoT SiteWise Captura de pantalla del elemento de navegación izquierdo «Activos».
  4. Elija la flecha situada junto a Demo Wind Farm Asset para ampliar la jerarquía del activo del parque eólico.

    AWS IoT SiteWise «Demo Wind Farm Asset» captura de pantalla de la jerarquía.
  5. Elija una turbina de demostración y elija Edit (Editar).

    AWS IoT SiteWise «Demo Turbine Asset» captura de pantalla.
  6. Actualiza el estado de notificación de la Wind Speedpropiedad a ENABLED.

    AWS IoT SiteWise Captura de pantalla «Editar el estado de las notificaciones».
  7. Elija Save asset (Guardar activo) en la parte inferior de la página.

  8. Repita los pasos 5 a 7 para cada activo de turbina de demostración.

  9. Elija una turbina de demostración (por ejemplo, Demo Turbine Asset 1).

  10. Elija Measurements (Medidas).

  11. Elija el icono copiar junto a la propiedad Wind Speed para copiar el tema de notificación en el portapapeles. Guarde el tema de notificación para utilizarlo más adelante en este tutorial. Solo necesita registrar el tema de notificación desde una turbina.

    AWS IoT SiteWise Captura de pantalla «Copiar tema de notificación».

    El tema de notificación debe ser similar al siguiente ejemplo.

    $aws/sitewise/asset-models/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE/assets/a1b2c3d4-5678-90ab-cdef-22222EXAMPLE/properties/a1b2c3d4-5678-90ab-cdef-33333EXAMPLE

Paso 2: Crea una regla en AWS IoT Core

En este procedimiento, se crea una regla en AWS IoT Core que analiza los mensajes de notificación del valor de la propiedad e inserta los datos en una tabla de Amazon DynamoDB. AWS IoT Las reglas básicas analizan MQTT los mensajes y realizan acciones en función del contenido y el tema de cada mensaje. A continuación, cree una regla con una acción de DynamoDB para insertar datos en una tabla de DynamoDB que cree como parte de este tutorial.

Para crear una regla con una acción de DynamoDB
  1. Vaya a la consola de AWS IoT. Si aparece un botón Get started (Empezar), elíjalo.

  2. En el panel de navegación izquierdo, elija Act (Acción) y, a continuación, elija Rules (Reglas).

    AWS IoT Captura de pantalla básica sobre «Crear una regla».
  3. Si aparece el cuadro de diálogo You don't have any rules yet (Aún no tiene ninguna regla), elija Create a rule (Crear una regla). De lo contrario, seleccione Crear.

  4. Escriba un nombre y una descripción para la regla.

    AWS IoT Captura de pantalla principal de la página «Crear una regla» con las letras «Nombre» y «Descripción» resaltadas.
  5. Busque el tema de notificación que guardó anteriormente en este tutorial.

    $aws/sitewise/asset-models/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE/assets/a1b2c3d4-5678-90ab-cdef-22222EXAMPLE/properties/a1b2c3d4-5678-90ab-cdef-33333EXAMPLE

    Sustituya el ID del activo (el ID que assets/ aparece después) del tema por un+. Esto selecciona la propiedad de velocidad del viento para todos los activos de aerogeneradores de demostración. El filtro de temas + acepta todos los nodos de un solo nivel de un tema. El tema debería tener el aspecto del siguiente ejemplo.

    $aws/sitewise/asset-models/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE/assets/+/properties/a1b2c3d4-5678-90ab-cdef-33333EXAMPLE
  6. Introduzca la siguiente instrucción de consulta de reglas. Reemplace el tema de la sección FROM por el tema de notificación.

    SELECT payload.assetId AS asset, (SELECT VALUE (value.doubleValue) FROM payload.values) AS windspeed, timestamp() AS timestamp FROM '$aws/sitewise/asset-models/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE/assets/+/properties/a1b2c3d4-5678-90ab-cdef-33333EXAMPLE' WHERE type = 'PropertyValueUpdate'
  7. En Set one or more actions (Definir una o varias acciones), elija Add action (Añadir acción).

    AWS IoT Captura de pantalla de la página principal «Crear una regla» con la palabra «Añadir acción» resaltada.
  8. En la página Seleccione una acción, elija Dividir el mensaje en varias columnas de una tabla de DynamoDB (ynamoDBvD 2).

    AWS IoT Captura de pantalla de la página principal «Seleccione una acción» con la acción D ynamoDBv 2 resaltada.
  9. Seleccione Configure action (Configurar acción) en la parte inferior de la página.

  10. En la página Configure action, seleccione Create a new resource.

    La consola de DynamoDB se abre en una pestaña nueva. Mantenga abierta la pestaña de acción de regla mientras realiza los siguientes procedimientos.

Paso 3: Crear una tabla de DynamoDB

En este procedimiento, se crea una tabla de Amazon DynamoDB para recibir los datos de velocidad del viento de la acción de la regla.

Para crear una tabla de DynamoDB
  1. En el panel de la consola de DynamoDB, elija Crear tabla.

  2. Introduzca un nombre para la tabla.

    Captura de pantalla de la página “Crear tabla” de DynamoDB.
  3. En Primary key (Clave principal), haga lo siguiente:

    1. Escriba timestamp como clave de partición.

    2. Seleccione el tipo Number (Número) .

    3. Marque la casilla Add sort key (Añadir clave de ordenación).

    4. Escriba asset como clave de ordenación y deje el tipo de clave de ordenación predeterminado de String (Cadena).

  4. Seleccione Crear.

    Cuando desaparece el aviso de creación de la tabla la tabla está lista.

  5. Vuelva a la pestaña con la página Configure action (Configurar acción) . Mantenga la pestaña de DynamoDB abierta mientras realiza los siguientes procedimientos.

Paso 4: Configurar la acción de la regla de DynamoDB

En este procedimiento, configurará la acción de la regla de Amazon DynamoDB para insertar datos de las actualizaciones de valores de propiedades en la nueva tabla de DynamoDB.

Para configurar la acción de regla de DynamoDB
  1. En la página Configurar acción, actualice la lista Nombre de la tabla y elija la nueva tabla de DynamoDB.

    AWS IoT Captura de pantalla de la página principal «Configurar la acción D ynamoDBv 2» con el buscador de tablas resaltado.
  2. Seleccione Crear rol para crear un IAM rol que otorgue a AWS IoT Core acceso para realizar la acción de regla.

  3. Introduzca un nombre de rol y elija Create Role (Crear rol).

    AWS IoT Captura de pantalla de la página principal «Configurar la acción D ynamoDBv 2» con la palabra «Crear rol» resaltada.
  4. Seleccione Agregar acción.

  5. Seleccione Create rule (Crear regla) en la parte inferior de la página para terminar de crear la regla.

    Los datos de los activos de demostración deberían comenzar a aparecer en la tabla de DynamoDB.

Paso 5: Explore los datos en DynamoDB

En este procedimiento, explorará los datos de velocidad del viento de los activos de demostración en su nueva tabla de Amazon DynamoDB.

Para explorar datos de activos en DynamoDB.
  1. Vuelva a la pestaña con la tabla de DynamoDB abierta.

  2. En la tabla que creó anteriormente, elija la ficha Items (Elementos) para ver los datos de la tabla. Actualice la página si no ve filas en la tabla. Si las filas no aparecen después de unos minutos, consulte Solucionar problemas de una regla (DynamoDB).

    Captura de pantalla de la página de la tabla de DynamoDB con la pestaña “Elementos” resaltada.
  3. En una fila de la tabla, elija el icono de edición para expandir los datos.

    Captura de pantalla de la página de la tabla de DynamoDB con el icono de edición en una fila resaltado.
  4. Seleccione la flecha situada junto a la estructura de windspeed para ampliar la lista de puntos de datos de velocidad del viento. Cada lista refleja un lote de puntos de datos de velocidad del viento enviados AWS IoT SiteWise por la demostración del parque eólico. Es posible que desee un formato de datos diferente si configura una acción de regla para su propio uso. Para obtener más información, consulte Consulta los mensajes de notificación de propiedades de los activos.

    Captura de pantalla del panel “Editar fila de tabla” de DynamoDB.

Ahora que ha completado el tutorial, desactive o elimine la regla y elimine la tabla de DynamoDB para evitar incurrir en cargos adicionales. Para limpiar sus recursos, consulte. Paso 6: Limpiar los recursos después del tutorial

Paso 6: Limpiar los recursos después del tutorial

Después de completar el tutorial, limpie los recursos para evitar incurrir en cargos adicionales. Los activos de su parque eólico de demostración se eliminan al final del período que eligió al crear la demostración. También puede eliminar la demostración manualmente. Para obtener más información, consulte Elimine la AWS IoT SiteWise demostración.

Utilice los siguientes procedimientos para deshabilitar las notificaciones de actualización del valor de las propiedades (si no ha eliminado la demostración), deshabilitar o eliminar la AWS IoT regla y eliminar la tabla de DynamoDB.

Para deshabilitar las notificaciones de actualización de valores de propiedad en propiedades de activos
  1. Vaya a la consola de AWS IoT SiteWise.

  2. En el panel de navegación izquierdo, elija Assets (activos).

    AWS IoT SiteWise Captura de pantalla del elemento de navegación izquierdo «Activos».
  3. Elija la flecha situada junto a Demo Wind Farm Asset para ampliar la jerarquía del activo del parque eólico.

    AWS IoT SiteWise «Demo Wind Farm Asset» captura de pantalla de la jerarquía.
  4. Elija una turbina de demostración y elija Edit (Editar).

    AWS IoT SiteWise «Demo Turbine Asset» captura de pantalla.
  5. Actualiza el estado de notificación de la Wind Speedpropiedad a DISABLED.

    AWS IoT SiteWise Captura de pantalla «Editar el estado de las notificaciones».
  6. Elija Save asset (Guardar activo) en la parte inferior de la página.

  7. Repita los pasos 4 a 6 para cada activo de turbina de demostración.

Para deshabilitar o eliminar una regla en AWS IoT Core
  1. Vaya a la consola de AWS IoT.

  2. En el panel de navegación izquierdo, elija Act (Acción) y, a continuación, elija Rules (Reglas).

  3. Elija el menú de su regla y elija Disable (Desactivar) o Delete (Eliminar).

    AWS IoT Captura de pantalla de la página principal de «Reglas» con el menú de una regla abierto y resaltado.
Para eliminar una tabla de DynamoDB
  1. Navegue hasta la consola de DynamoDB.

  2. En el panel de navegación izquierdo, elija Tables (Tablas).

  3. Elija la tabla que creó anteriormente, WindSpeedData.

  4. Elija Delete table (Eliminar tabla).

    Captura de pantalla de la página “Tabla” de DynamoDB con “Eliminar tabla” resaltado.
  5. En el cuadro de diálogo Delete table (Eliminar tabla), elija Delete (Eliminar).

    Captura de pantalla del cuadro de diálogo “Eliminar tabla” de DynamoDB con “Eliminar” resaltado.