Administración y control de dispositivos

En esta introducción se presentan los conceptos clave sobre la administración y el control de dispositivos en una solución típica de Azure IoT. Cada sección incluye vínculos a contenido que proporciona más detalles e instrucciones.

Las aplicaciones de IoT Central usan los servicios IoT Hub y Device Provisioning Service (DPS) internamente. Por lo tanto, los conceptos de este artículo se aplican tanto si usa IoT Central para explorar un escenario de IoT como para compilar la solución mediante IoT Hub y DPS.

En el diagrama siguiente se muestra una vista de alto nivel de los componentes en una solución de IoT típica. Este artículo se centra en los componentes de administración y control de dispositivos de una solución de IoT.

Diagram that shows the high-level IoT solution architecture highlighting device connectivity areas.

En Azure IoT, la administración de dispositivos hace referencia a procesos como el aprovisionamiento y la actualización de dispositivos. La administración de dispositivos comprende las siguientes tareas:

  • Registro de dispositivos
  • Aprovisionamiento de dispositivos
  • Implementación de dispositivos
  • Actualizaciones del dispositivo
  • Administración y rotación de claves de dispositivos
  • Supervisión de dispositivos
  • Habilitación y deshabilitación de dispositivos

En Azure IoT, el comando y el control hacen referencia a los procesos que permiten enviar comandos a los dispositivos y recibir respuestas de ellos. Por ejemplo, puede enviar un comando a un dispositivo para:

  • Establecer una temperatura objetivo.
  • Solicitar valores de temperatura máxima y mínima para las últimas dos horas.
  • Establecer el intervalo de telemetría en 10 segundos.

Primitivos

Las soluciones de Azure IoT pueden usar los siguientes primitivos para la administración de dispositivos, y el comando y el control:

  • Dispositivos gemelos para compartir y sincronizar los datos de estado con la nube. Por ejemplo, un dispositivo puede usar el dispositivo gemelo para notificar el estado actual de una válvula que controla a la nube y recibir una temperatura de destino deseada de la nube.
  • Gemelos digitales para representar un dispositivo en el mundo digital. Por ejemplo, un gemelo digital puede representar la ubicación física de un dispositivo, sus funcionalidades y sus relaciones con otros dispositivos. Para obtener más información sobre las diferencias entre dispositivos gemelos y gemelos digitales, consulte Descripción de gemelos digitales de IoT Plug and Play.
  • Métodos directos para recibir comandos de la nube. Un método directo puede tener parámetros y devolver una respuesta. Por ejemplo, la nube puede llamar a un método directo para solicitar que el dispositivo se reinicie en 30 segundos.
  • Mensajes de nube a dispositivo para recibir notificaciones unidireccionales de la nube. Por ejemplo, una notificación de que una actualización está lista para descargarse.

Para obtener más información, consulte Guía de comunicaciones de la nube al dispositivo.

Registro de dispositivos

Para que un dispositivo pueda conectarse a un centro de IoT, debe estar registrado. El registro de dispositivos es el proceso de creación de una identidad de dispositivo en la nube. Cada centro de IoT tiene su propio registro de dispositivos interno. La identidad del dispositivo se usa para autenticar el dispositivo cuando se conecta a Azure IoT. Una entrada de registro de dispositivos incluye las siguientes propiedades:

  • Un id. de dispositivo único.
  • Información de autenticación, como claves simétricas o certificados X.509.
  • El tipo de dispositivo. ¿Es un dispositivo IoT Edge o no?

Si cree que un dispositivo está en peligro o no funciona correctamente, puede deshabilitarlo en el registro de dispositivos para evitar que se conecte a la nube. Para permitir que un dispositivo vuelva a conectarse a una nube una vez resuelto el problema, puede volver a habilitarlo en el registro de dispositivos. También puede quitar permanentemente un dispositivo del registro de dispositivos para evitar que se conecte completamente a la nube.

Para obtener más información, consulte Descripción del registro de identidades de un centro de IoT.

IoT Central proporciona una interfaz de usuario para administrar el registro de dispositivos en el centro de IoT subyacente. Para obtener más información, consulte Agregar un dispositivo (IoT Central).

Aprovisionamiento de dispositivos

Debe configurar cada dispositivo de la solución con los detalles del centro de IoT al que debe conectarse. Puede configurar manualmente cada dispositivo de la solución, pero este enfoque puede no ser práctico para un gran número de dispositivos. Para solucionar este problema, puede usar Device Provisioning Service (DPS) para registrar automáticamente cada dispositivo con un centro de IoT y, a continuación, aprovisionar cada dispositivo con la información de conexión necesaria. Si la solución de IoT usa varios centros de IoT, puede usar DPS para aprovisionar dispositivos en un centro en función de criterios como, por ejemplo, el centro más cercano al dispositivo. Puede configurar el DPS con reglas para registrar y aprovisionar los dispositivos con antelación de la implementación física del dispositivo en el campo.

Si la solución de IoT usa IoT Hub, el uso de DPS es opcional. Si usa IoT Central, la solución usa automáticamente una instancia de DPS que administra IoT Central.

Para obtener más información, consulte Introducción a Device Provisioning Service.

Implementación de dispositivos

En Azure IoT, la implementación de dispositivos normalmente hace referencia al proceso de instalación de software en un dispositivo de IoT Edge. Cuando un dispositivo de IoT Edge se conecta a un centro de IoT, este recibe un manifiesto de implementación que contiene detalles de los módulos que se van a ejecutar en el dispositivo. El manifiesto de implementación también contiene información de configuración para los módulos. Hay una serie de módulos estándar disponibles para dispositivos de IoT Edge. También se pueden crear módulos propios personalizados.

Para obtener más información, consulte ¿Qué es Azure IoT Edge?

Si usa IoT Central, puede administrar los manifiestos de implementación mediante la interfaz de usuario de IoT Central.

Actualizaciones del dispositivo

Normalmente, la solución de IoT debe incluir una manera de actualizar el software del dispositivo. En el caso de un dispositivo de IoT Edge, puede actualizar los módulos que se ejecutan en el dispositivo mediante la actualización del manifiesto de implementación.

En el caso de un dispositivo que no sea de IoT Edge, debe tener una manera de actualizar el firmware del dispositivo. Este proceso de actualización podría usar un mensaje de la nube al dispositivo para notificar al dispositivo que hay disponible una actualización de firmware. A continuación, el dispositivo ejecuta un código personalizado para descargar e instalar la actualización.

El servicio de Device Update for IoT Hub proporciona una solución administrada para actualizar dispositivos. Permite cargar actualizaciones de firmware en la nube y, a continuación, distribuirlas a los dispositivos. También permite supervisar el proceso de actualización y revertir a una versión anterior si se produce un error en la actualización.

Administración y rotación de claves de dispositivos

Durante el ciclo de vida de la solución de IoT, es posible que tenga que sustituir las claves que se usan para autenticar los dispositivos. Por ejemplo, puede que tenga que sustituir las claves si sospecha que una clave está en peligro o si un certificado expira:

Supervisión de dispositivos

Como parte de la supervisión general de soluciones, puede querer supervisar el estado de los dispositivos. Por ejemplo, puede querer supervisar el estado de los dispositivos o detectar cuándo un dispositivo ya no está conectado a la nube. Entre las opciones de supervisión de dispositivos se incluyen:

  • Los dispositivos usan el dispositivo gemelo para notificar su estado actual a la nube. Por ejemplo, un dispositivo puede notificar su temperatura interna actual o su nivel de batería actual.
  • Los dispositivos pueden generar alertas enviando mensajes de telemetría a la nube.
  • IoT Hub puede generar eventos cuando los dispositivos se conectan o desconectan de la nube.
  • IoT Central puede usar reglas para ejecutar acciones cuando se cumplen los criterios especificados.
  • Use herramientas de aprendizaje automático para analizar flujos de telemetría de dispositivos para identificar anomalías que indican un problema con el dispositivo.

Para obtener más información, consulte Supervisión del estado de conexión del dispositivo (IoT Hub).

Migración de dispositivos

Si necesita migrar un dispositivo de IoT Central a IoT Hub, puede usar la herramienta Device Migration. Para obtener más información, consulte Migrar dispositivos de IoT Central a IoT Hub.

Comando y control

Para enviar comandos a los dispositivos para controlar su comportamiento, use:

  • Métodos directos, para las comunicaciones que requieren confirmación inmediata del resultado. Los métodos directos se utilizan frecuentemente para el control interactivo de dispositivos, como la activación de un ventilador.

  • Propiedades deseadas del dispositivo gemelo para comandos de ejecución prolongada destinados a poner el dispositivo en un determinado estado deseado. Por ejemplo, establecer el intervalo de envío de telemetría en 30 minutos.

  • Mensajes de la nube al dispositivo para notificaciones unidireccionales al dispositivo.

Para obtener más información, consulte Guía de comunicaciones de la nube al dispositivo.

En algunos escenarios, puede automatizar el control de dispositivos en función de los bucles de comentarios. Por ejemplo, si la temperatura del dispositivo es demasiado alta, la lógica que se ejecuta en la nube puede enviar un comando para activar un ventilador. Después, el proceso en la nube puede enviar un comando para desactivar el ventilador cuando la temperatura vuelve a ser normal.

También es posible ejecutar este tipo de automatización localmente. Por ejemplo, si usa IoT Edge para implementar el dispositivo de puerta de enlace, puede ejecutar la lógica que controla el dispositivo en un módulo de IoT Edge. La ejecución de este tipo de lógica en el perímetro puede reducir la latencia y proporcionar resistencia si hay una interrupción de la red.

Trabajos

Puede usar métodos directos, propiedades deseadas y mensajes de la nube al dispositivo para enviar comandos a dispositivos individuales. Si necesita enviar comandos a varios dispositivos, puede usar trabajos. Los trabajos permiten programar y enviar comandos y actualizaciones de propiedades deseadas a varios dispositivos al mismo tiempo. También puede usar trabajos para supervisar el progreso de los comandos y revertir a un estado anterior si se produce un error en los comandos.

Para obtener más información, consulte:

Pasos siguientes

Ahora que ha visto información general sobre la administración y el control de dispositivos en las soluciones de Azure IoT, algunos pasos siguientes sugeridos incluyen: