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.
Integre los datos en SiteWise Edge mediante una puerta de enlace V3 habilitada para MQTT
Este tutorial le guía sobre la integración de dispositivos y sensores de terceros que utilizan el protocolo de mensajería MQTT con la puerta de enlace V3 AWS IoT SiteWise habilitada para MQTT. Aprenderá a configurar una puerta de enlace AWS IoT SiteWise perimetral para recopilar y monitorear datos de sus dispositivos compatibles con MQTT. AWS IoT SiteWise le permite recopilar, procesar y monitorear datos de equipos industriales. Utilice las capacidades de SiteWise Edge para optimizar las operaciones de IoT industrial y transformar los datos sin procesar en información procesable.
En este tutorial, utilizamos los datos de una demostración de un parque eólico para ilustrar los conceptos clave. Una vez que se familiarice con el proceso, puede repetir el tutorial con sus propios datos.
Después de completar este tutorial, puede realizar las siguientes acciones:
-
Instale y configure una puerta de enlace V3 habilitada para MQTT para recibir datos de dispositivos industriales
-
Procese y valide los mensajes MQTT entrantes desde su equipo periférico
-
Vea los datos del dispositivo AWS IoT SiteWise mediante una plataforma de visualización de terceros
-
Envíe los datos procesados desde su puerta de enlace perimetral Nube de AWS a
Además, puede aprovechar las capacidades de su puerta de enlace perimetral conectándose a otros AWS IoT servicios para realizar las siguientes tareas:
-
Configure AWS IoT reglas para enrutar los datos a servicios como Amazon S3
, Amazon Timestream y. AWS Lambda -
Úselo AWS IoT Device Defender
para administrar y actualizar de forma remota las configuraciones de su puerta de enlace. -
Implemente la autenticación y la autorización seguras de los dispositivos mediante funciones AWS IoT de seguridad. Para obtener más información, consulte la AWS IoT seguridad en la Guía para AWS IoT desarrolladores.
-
Cree alertas y notificaciones automatizadas basadas en los datos del equipo. Para obtener más información, consulte las reglas AWS IoT de la Guía para AWS IoT desarrolladores.
nota
Este tutorial hace referencia a servicios, herramientas y documentación de terceros. AWS no es vendedor ni proveedor de productos o servicios de terceros y no puede garantizar la precisión de la información proporcionada por proveedores externos. Evalúe y valide todas las herramientas de terceros antes de implementarlas.
Temas
Requisitos previos
Necesitará lo siguiente para completar este tutorial:
-
Y Cuenta de AWS. Si no dispone de una, consulte Configura una AWS cuenta.
-
Un usuario AWS Identity and Access Management (IAM) con permisos de administrador. Para obtener más información, consulte Gestión de identidades y accesos para AWS IoT SiteWise.
-
La última versión de Python instalada en el dispositivo.
importante
Este tutorial requiere el uso de los recursos creados en el tutorial sobre ingesta de datos. Debe completarlo antes de continuar con este tutorial.
Paso 1: Crear una AWS IoT política
En este tutorial, se utiliza la AWS IoT política que creó en el tutorial sobre ingesta de datos. Esta política establece las reglas de seguridad para sus dispositivos y crea una representación digital de sus dispositivos y sensores externos. AWS IoT La política permite que sus dispositivos de terceros envíen datos AWS IoT Core mediante MQTT (Message Queuing Telemetry Transport). Para obtener más información acerca de los mensajes de MQTT, consulte What is MQTT?
Esta política permite a sus AWS IoT dispositivos establecer conexiones y comunicarse con dispositivos ocultos mediante mensajes MQTT. Para interactuar con las sombras de los dispositivos, tus AWS IoT cosas publican y reciben mensajes MQTT sobre temas que comienzan con. $aws/things/
Esta política incorpora una variable de política de objetos denominada thing-name
/shadow/${iot:Connection.Thing.ThingName}
. Esta variable sustituye el nombre del objeto conectado en cada tema. La instrucción de iot:Connect
impone límites en cuanto a qué objetos pueden establecer conexiones, lo que garantiza que la variable de política de objeto solo puede sustituir los nombres que comienzan por SiteWiseTutorialDevice
.
Para obtener más información, consulte Variables de objetos de políticas en la Guía para desarrolladores de AWS IoT .
nota
Esta política se aplica a objetos cuyos nombres comienzan por SiteWiseTutorialDevice
. Para usar un nombre diferente para sus objetos, debe actualizar la política según corresponda.
Paso 2: Crea y configura cualquier cosa AWS IoT
En este paso, registre su dispositivo perimetral como una AWS IoT cosa y genere los certificados y claves necesarios para una comunicación segura con AWS IoT SiteWise Edge. Este proceso sienta las bases para que su dispositivo envíe datos de terceros a través de su puerta de enlace V3 habilitada para MQTT.
Tras completar estos pasos, podrás conectar tu dispositivo a AWS IoT SiteWise Edge de forma segura. Creó un directorio local para almacenar los certificados y las claves que generó para la autenticación en MQTT. El dispositivo está registrado como un AWS IoT objeto en la AWS IoT consola
Paso 3: Configure su puerta de enlace V3 habilitada para SiteWise Edge MQTT
En este paso, cree su puerta de enlace V3 habilitada para AWS IoT SiteWise Edge MQTT y configúrela para recibir datos del intermediario EMQX. La puerta de enlace actúa como un puente entre sus dispositivos y. AWS IoT Esto le permite procesar los datos localmente en el borde antes de enviarlos al Nube de AWS. Esta configuración reduce el ancho de banda y reduce los retrasos en el procesamiento en la nube.
Paso 4: Instale el software SiteWise Edge Gateway
Para instalar el software de puerta de enlace, utilice el paquete de instalación que descargó en el paso anterior. El proceso de instalación configura los componentes necesarios, inicia el servicio principal de Greengrass y registra el dispositivo en él. AWS IoT Greengrass Una vez completada la instalación, compruebe que la puerta de enlace aparece en la AWS IoT SiteWise consola
Para obtener instrucciones detalladas, consulta Instale el software de puerta de enlace AWS IoT SiteWise Edge en su dispositivo local.
Paso 5: Configure el broker EMQX para que se conecte a aplicaciones externas
nota
Debe haber implementado su puerta de enlace V3 habilitada para SiteWise Edge MQTT antes de continuar. La puerta de enlace proporciona la infraestructura y los ajustes de seguridad necesarios para configurar el broker EMQX. La configuración del broker fallará sin un despliegue de puerta de enlace activo.
Configure el broker EMQX para permitir una comunicación segura entre sus dispositivos de IoT y aplicaciones externas. El intermediario EMQX funciona como un centro de mensajería central que enruta los datos entre sus dispositivos, puertas de enlace y aplicaciones de IoT. El intermediario EMQX garantiza una entrega fiable de los mensajes en su pasarela y las aplicaciones conectadas en la periferia. Para obtener más información, consulte Connect aplicaciones externas al broker EMQX.
Para configurar el bróker EMQX
-
Configure el bróker EMQX. Para obtener instrucciones de configuración detalladas, siga los pasos 1 a 14 de la sección Actualizar la configuración de despliegue de EMQX para la autenticación.
-
Configure los temas de MQTT para la supervisión de parques eólicos. Para obtener más información sobre los requisitos de MQTT, consulte. Requisitos del tema MQTT
-
Uso de la CPU:
SiteWiseTutorialDevice/cpu
-
Uso de memoria:
SiteWiseTutorialDevice/memory
-
Marca de tiempo:
SiteWiseTutorialDevice/timestamp
-
-
Revise la configuración y complete la implementación.
-
Elija Confirmar para guardar la configuración.
-
Selecciona Siguiente hasta llegar al paso de revisión.
-
En la página Revisar, elija Implementar.
-
Espere a que la implementación se complete correctamente antes de continuar.
-
-
Prepare los mensajes con el formato de carga útil para enviarlos al intermediario EMQX. Para obtener más información sobre la estructuración de las cargas útiles, consulte Actualizar la configuración de despliegue de EMQX para la autenticación.
-
Implemente las siguientes medidas de seguridad:
-
Utilice el cifrado Transport Layer Security (TLS) (puerto 8833) para proteger los datos en tránsito. Para obtener más información, consulte Configure TLS para establecer conexiones seguras con el intermediario EMQX en Edge AWS IoT SiteWise.
-
Configure la autenticación con nombre de usuario y contraseña para verificar las identidades de los dispositivos. Esta medida de seguridad ayuda a proteger sus datos y garantiza que solo los dispositivos autorizados puedan conectarse a su sistema. Para obtener más información, consulte Habilite la autenticación de nombre de usuario y contraseña.
-
EMQX le permite crear reglas de autorización basadas en identificadores como el nombre de usuario, la dirección IP o el ID de cliente. Esto es útil para controlar el acceso a sus datos. Para obtener más información, consulte Configure las reglas de autorización para AWS IoT SiteWise Edge en EMQX.
Tras una implementación exitosa, su agente EMQX estará configurado y listo para conectarse de forma segura con aplicaciones externas.
nota
El formato de carga útil debe seguir una estructura específica para que AWS IoT SiteWise Edge procese e ingiera los datos correctamente. Para obtener más información sobre la estructura requerida, consulte. Estructura de carga útil de JSON
Ejemplo: añadir cargas útiles JSON de CPU, memoria y marca de tiempo
Carga útil JSON de CPU
{ "propertyAlias": "SiteWiseTutorialDevice/cpu", "propertyValues": [ { "quality": "GOOD", "timestamp": { "offsetInNanos": 0, "timeInSeconds": 1753206441 }, "value": { "integerValue": 45.2 } } ] }
Carga útil JSON de memoria
{ "propertyAlias": "SiteWiseTutorialDevice/memory", "propertyValues": [ { "quality": "GOOD", "timestamp": { "offsetInNanos": 0, "timeInSeconds": 1753206441 }, "value": { "integerValue": 67.8 } } ] }
Carga útil JSON con marca de tiempo
{ "propertyAlias": "SiteWiseTutorialDevice/timestamp", "propertyValues": [ { "quality": "GOOD", "timestamp": { "offsetInNanos": 0, "timeInSeconds": 1753206441 }, "value": { "integerValue": 23.5 } } ] }
nota
Cada carga útil de JSON debe publicarse por separado como un mensaje individual. No combine varios valores de propiedades en un solo mensaje. Envíe cada carga útil de CPU, memoria y marca de tiempo como una publicación MQTT independiente.
La carga útil define la estructura JSON requerida que sus dispositivos de IoT deben usar para enviar los datos del dispositivo a Edge a través del intermediario EMQX. SiteWise Este formato garantiza que AWS IoT SiteWise pueda identificar sus dispositivos y procesar las lecturas de los sensores. Una vez implementadas estas configuraciones y estructuras de carga útil, el sistema de monitoreo de su parque eólico estará listo para recopilar y procesar datos.
Paso 6: Publica los datos con Mosquitto
Después de crear su puerta de enlace V3 habilitada para MQTT, configure Eclipse Mosquitto para enviar los datos de prueba a Edge. SiteWise Mosquitto es un intermediario de mensajes MQTT de código abierto que utiliza el protocolo MQTT para facilitar la mensajería entre dispositivos. El cliente Mosquitto permite publicar mensajes sobre temas de MQTT, simulando los datos de los sensores de los parques eólicos. Con Mosquitto, simule los datos del dispositivo sin necesidad de servicios de terceros ni equipos adicionales. Para obtener más información, consulte la documentación
Utilice el cliente CLI de Mosquitto para probar el broker SiteWise EDGE EMQX
-
Instale Mosquitto en su dispositivo local. Para obtener instrucciones detalladas, consulta Descargar Mosquitto en el sitio web
oficial de Eclipse Mosquitto. -
Para obtener más información sobre la conexión de aplicaciones externas para transferir datos industriales, consulte. Connect aplicaciones externas al broker EMQX
importante
Asegúrese de que los ajustes de conexión MQTT que configure aquí coincidan con los utilizados en el comando Mosquitto publish. El host debe ser la dirección IP o el nombre de host de su SiteWise puerta de enlace Edge. El puerto suele ser el 1883 (o el 8883 si se utiliza SSL/TLS).
Use Mosquitto para publicar los datos de las pruebas. Abra una línea de comandos y ejecute los siguientes comandos:
Ejemplo: propiedad de la CPU
mosquitto_pub -h localhost -p 1883 -t "SiteWiseTutorialDevice/cpu" -m '{ "propertyAlias": "SiteWiseTutorialDevice/cpu", "propertyValues": [ { "quality": "GOOD", "timestamp": { "timeInSeconds": 1753206441, "offsetInNanos": 0 }, "value": { "integerValue": 45.2 } } ] }'
Ejemplo: propiedad de memoria
mosquitto_pub -h localhost -p 1883 -t "SiteWiseTutorialDevice/memory" -m '{ "propertyAlias": "SiteWiseTutorialDevice/memory", "propertyValues": [ { "quality": "GOOD", "timestamp": { "timeInSeconds": 1753206441, "offsetInNanos": 0 }, "value": { "integerValue": 72.1 } } ] }'
Ejemplo: propiedad Timestamp
mosquitto_pub -h localhost -p 1883 -t "SiteWiseTutorialDevice/timestamp" -m '{ "propertyAlias": "SiteWiseTutorialDevice/timestamp", "propertyValues": [ { "quality": "GOOD", "timestamp": { "timeInSeconds": 1753206441, "offsetInNanos": 0 }, "value": { "integerValue": 1683000000 } } ] }'
nota
El uso de localhost
como dirección de intermediario de EMQX es únicamente con fines de demostración. En entornos de producción o cuando se conecta desde dispositivos externos, debe utilizar la dirección de intermediario EMQX adecuada para su configuración de despliegue específica. Para obtener instrucciones de conexión detalladas, consulte. Conecte una aplicación al bróker EMQX en Edge AWS IoT SiteWise
Paso 7: Especifique los destinos
En este paso, especifique los destinos para determinar hacia dónde dirigir los datos de origen. Úselo AWS IoT SiteWise con el almacenamiento en búfer de Amazon S3 como destino. Esta opción proporciona una forma escalable de almacenar y procesar sus datos de IoT.
Paso 8: Especificar los filtros de ruta
En este paso, configure los filtros de ruta para especificar qué temas de MQTT debe monitorizar para los datos de los dispositivos de su parque eólico.
Los filtros de ruta siguen la especificación comodín del tema MQTT, que admite dos caracteres especiales:
-
+
— Este símbolo representa un comodín de un solo nivel, que coincide con cualquier cadena de un solo nivel. -
#
— Este símbolo representa un comodín de varios niveles, que coincide con cualquier número de niveles de la jerarquía de temas.
nota
Para obtener más información sobre otros filtros de ruta, consulte. Caracteres especiales en los nombres de los filtros de ruta
Paso 9: Configura tus recursos AWS de IoT
En este paso, cree los modelos de activos y los AWS IoT SiteWise activos necesarios para representar sus dispositivos simulados de terceros y permitir la ingesta de datos a través de su puerta de enlace perimetral.
Antes de iniciar este paso, debería haber completado los pasos 3 a 8 del tutorial sobre la ingesta de datos. Estos pasos establecen los componentes fundamentales para integrar sus datos de terceros a través de la puerta de enlace V3 habilitada para MQTT. También debe configurar reglas que definen cómo fluyen los datos de los sensores y ejecuta un script de cliente del dispositivo que simula los datos de un parque eólico industrial. AWS IoT SiteWise
Para validar la configuración de sus recursos de AWS IoT
-
Utilice el siguiente AWS CLI comando para comprobar que ha creado y configurado correctamente su modelo de dispositivo SiteWise tutorial y su modelo de flota de dispositivos SiteWise tutorial:
aws iotsitewise describe-asset-model --asset-model-id
your-device-model-id
Utilice el siguiente AWS CLI comando para recuperar el ID de sus modelos de activos:
aws iotsitewise list-asset-models
-
Utilice el siguiente AWS CLI comando para comprobar que ha creado y configurado correctamente los activos SiteWise Tutorial Device 1 y SiteWise Tutorial Device Fleet 1:
aws iotsitewise describe-asset --asset-id
your-asset-id
Utilice el siguiente AWS CLI comando para recuperar el ID de sus activos:
aws iotsitewise list-assets
Paso 10: visualice sus datos
Configure la versión de código abierto de Grafana para visualizar los datos de los dispositivos de su parque eólico. Grafana es una plataforma de visualización que muestra sus datos operativos en tiempo real. Estos paneles le ayudan a realizar un seguimiento de la eficiencia operativa e identificar las necesidades de mantenimiento en toda su infraestructura. Para obtener más información sobre la integración, consulteIntegre AWS IoT SiteWise con Grafana.
Para configurar Grafana
-
Para obtener instrucciones para descargar e instalar la última versión de Grafana, consulte Instalar Grafana en el sitio web oficial de Grafana
. -
Para obtener instrucciones de configuración detalladas específicas para su sistema operativo, consulte Configurar Grafana en el sitio web oficial
de Grafana. -
Configure la fuente de AWS IoT SiteWise datos. Esto le permite configurar el AWS IoT SiteWise complemento en su servidor Grafana. Para obtener instrucciones detalladas sobre cómo usar el complemento, consulte Conectarse a una fuente de AWS IoT SiteWise datos en la Guía del usuario de Amazon Managed Grafana.
importante
Asegúrese de tener la última versión de Grafana para garantizar la compatibilidad con la fuente de AWS IoT SiteWise datos.
Después de completar estos pasos, puede crear y personalizar los paneles de Grafana para mostrar las métricas operativas de su parque eólico. Esto le permite realizar un seguimiento y analizar el rendimiento de su parque eólico en el perímetro en tiempo real.
nota
Si bien este tutorial utiliza la versión de código abierto de Grafana AWS , también ofrece Amazon Managed Grafana para entornos de producción. Amazon Managed Grafana es un servicio totalmente gestionado que elimina la necesidad de instalar, configurar y mantener sus propios servidores Grafana. Considere la posibilidad de pasarse a Amazon Managed Grafana cuando esté listo para escalar su solución. Para obtener más información sobre Amazon Managed Grafana y sobre cómo procesar y visualizar sus datos con herramientas de código abierto, consulte lo siguiente:
-
¿Qué es Amazon Managed Grafana? en la Guía del usuario de Amazon Managed Grafana
-
Procese y visualice datos con SiteWise Edge y herramientas de código abierto
Has completado el tutorial. En este procedimiento, configuró AWS IoT SiteWise Edge para integrar datos de dispositivos de terceros mediante una puerta de enlace V3 habilitada para MQTT. Esta configuración le permite recopilar, procesar y visualizar datos de equipos industriales en la periferia, lo que reduce la latencia y los costes operativos. Al utilizar la demostración del parque eólico, recopiló y procesó métricas operativas, como los datos de uso de la CPU y la memoria, a través de su puerta de enlace V3 compatible con MQTT.
Para mejorar tu solución de IoT, considera explorar funciones avanzadas, como la detección de anomalías, mediante el aprovechamiento o la integración con otros AWS serviciosDetección de anomalías con Lookout for Equipment, como Amazon, QuickSight en la Guía QuickSight del usuario de Amazon para obtener análisis avanzados.
Paso 11: Limpiar los recursos después del tutorial
Después de completar este tutorial sobre la integración de datos en AWS IoT SiteWise Edge, limpie sus recursos para evitar incurrir en cargos adicionales.
Para eliminar activos jerárquicos en AWS IoT SiteWise
-
Vaya a la consola de AWS IoT SiteWise
. -
En el panel de navegación izquierdo, elija Assets (activos).
-
Al eliminar activos AWS IoT SiteWise, primero debe desasociarlos.
Complete los siguientes pasos para anular la asociación de los activos de su dispositivo de su activo de flota de dispositivos:
-
Elige el activo de tu flota de dispositivos (SiteWise Tutorial Device Fleet 1).
-
Seleccione Editar.
-
En Assets associated to this asset (activos asociados a este activo), elija Disassociate (Anular asociación) para cada activo de dispositivo asociado a este activo de flota de dispositivo.
-
Seleccione Save.
nota
Los activos del dispositivo ya no están organizados en forma jerárquica.
-
-
Elija el activo de dispositivo (SiteWise Tutorial Device 1).
-
Elija Eliminar.
-
En el cuadro de diálogo de confirmación, introduzca y
Delete
, a continuación, seleccione Eliminar. -
Repita los pasos 4 a 6 para cada activo de dispositivo y el activo de flota de dispositivos (SiteWise Tutorial Device Fleet 1).
Para eliminar modelos de activos jerárquicos en AWS IoT SiteWise
-
Vaya a la consola de AWS IoT SiteWise
. -
Elimine su dispositivo y los activos de la flota de dispositivos.
-
En el panel de navegación izquierdo, elija Models (Modelos).
-
Elija su modelo de activos de flota de dispositivos (SiteWise Tutorial Device Fleet Model). No puede eliminar un modelo si tiene activos creados a partir de ese modelo.
Al eliminar modelos de activos jerárquicos, comience eliminando primero el modelo de activos principal.
-
Elija Eliminar.
-
En el cuadro de diálogo de confirmación, ingresa y
Delete
, a continuación, selecciona Eliminar. -
Repita los pasos 4 a 6 para el modelo de activos del dispositivo (SiteWise Tutorial Device Model).
Para deshabilitar o eliminar una regla en AWS IoT Core
-
Vaya a la consola de AWS IoT
. -
En el panel de navegación izquierdo, selecciona Enrutamiento de mensajes y, a continuación, Reglas.
-
Seleccione su regla y seleccione Eliminar.
-
En el cuadro de diálogo de confirmación, ingrese el nombre de la regla y, a continuación, elija Eliminar.
Para eliminar un bucket de Amazon S3
-
Vaya a la consola de Amazon IVS
. -
En el panel de navegación izquierdo, selecciona un depósito de uso general.
-
En la lista de cubos, selecciona el botón de opción situado junto al depósito que has creado y, a continuación, selecciona Vacío en la parte superior de la página.
-
En el cuadro de diálogo de confirmación, confirme la eliminación y, a continuación, seleccione Vacío.
-
Cuando el depósito esté vacío, selecciona Eliminar para eliminarlo.
-
En el cuadro de diálogo de confirmación, introduce el nombre del depósito para confirmar la eliminación.
-
Elija Delete bucket (Eliminar bucket).
Para eliminar una puerta de enlace SiteWise Edge
-
Vaya a la consola de AWS IoT SiteWise
. -
En el panel de navegación izquierdo, elija puertas de enlace Edge.
-
En Puertas de enlace, elija la puerta de enlace que creó para este tutorial. Por ejemplo,
SiteWise Tutorial Device Gateway
. -
Elija Eliminar.
-
Para confirmar que desea eliminar la puerta de enlace, escriba
Delete
en el cuadro de diálogo de confirmación y, a continuación, seleccione Eliminar en la ventana que aparece.
Para eliminar tu cosa de IoT
-
Vaya a la consola de AWS IoT
. -
En el panel de navegación izquierdo, selecciona Administrar y, a continuación, selecciona Cosas.
-
Selecciona el elemento de IoT que creaste para este tutorial. Por ejemplo,
SiteWiseTutorialDevice1
. -
Elija Eliminar.
-
En el cuadro de diálogo de confirmación, introduce el nombre de la cosa y, a continuación, selecciona Eliminar.
Para desinstalar AWS IoT Greengrass Core
Desinstale el software AWS IoT Greengrass Core de su dispositivo local. Para obtener instrucciones detalladas, consulte Desinstalar el software AWS IoT Greengrass principal en la Guía para AWS IoT Greengrass desarrolladores, versión 2.
importante
Al desinstalar Greengrass, se eliminan todas las configuraciones y datos locales. Asegúrese de haber hecho una copia de seguridad de toda la información importante antes de continuar.
(Opcional) Para eliminar recursos de terceros
Tras completar este tutorial, considere la posibilidad de cerrar todos los recursos externos que haya creado. Esto ayuda a evitar incurrir en cargos por parte de proveedores externos.
Recursos adicionales
Consulte los siguientes recursos para obtener más información: