Mantenimiento y sistemas de seguridad de ferrocarriles con IoT Edge

Azure Blob Storage
Azure Cosmos DB
Azure IoT
Azure IoT Edge
Azure IoT Hub

En este artículo, se describe una colaboración entre Microsoft y una importante empresa de ferrocarriles para crear una solución de mantenimiento y seguridad para trenes de Internet de las cosas (IoT).

Architecture

Diagrama de la arquitectura de la solución que muestra los módulos de IoT Edge en las casetas junto a las vías. Los módulos perimetrales usan el aprendizaje automático para identificar riesgos de errores. El módulo controlador de alertas carga datos de imagen en Azure Blob Storage. Azure Edge Hub carga los metadatos y los mensajes asociados a través de Azure IoT Hub en el almacenamiento de Azure Cosmos DB.

Descargue un archivo Visio de esta arquitectura.

Flujo de datos

  1. Un servidor de archivos de imagen de almacenamiento conectado a la red (NAS) en una caseta situada junto a las vías sirve imágenes de las ruedas de tren procesadas y clasificadas. Tres imágenes de cada rueda crean una imagen unida.
  2. El módulo de sondeo de IoT Edge alerta al dispositivo IoT Edge de la existencia de imágenes nuevas disponibles para su procesamiento.
  3. El módulo de ML de IoT Edge ejecuta un modelo de ML de terceros que procesa las imágenes e identifica las áreas de las ruedas que necesitan más inspección.
  4. El controlador de alertas de IoT Edge carga todas las imágenes en Azure Blob Storage, empezando por las imágenes que presentan posibles defectos, y devuelve los identificadores URI de los blobs de imagen.
  5. El módulo del centro de IoT Edge asocia los identificadores URI de la imagen con los metadatos de la imagen, como el número de equipamiento o coche, el eje, la marca de tiempo y la ubicación del detector. El módulo carga los metadatos y las alertas en Azure IoT Hub.
  6. IoT Hub envía los metadatos mediante Event Hubs y Azure Functions a una base de datos de Azure Cosmos DB.
  7. La base de datos de Azure Cosmos DB asocia los metadatos de las imágenes a los identificadores URI de las imágenes almacenadas en Azure Blob Storage. El sistema puede usar los datos de Azure Cosmos DB para el reconocimiento de defectos, el análisis de tendencias, el mantenimiento predictivo y nuevos entrenamientos del modelo de ML.

Componentes

En este ejemplo, los dispositivos de Azure IoT Edge se implementan en casetas situadas junto a las vías mediante hardware de servidor con tarjetas de automatización industrial personalizadas y unidades de procesamiento gráfico (GPU) para optimizar el rendimiento.

IoT Edge está formado por tres componentes:

  • Módulos de IoT Edge, son contenedores que pueden ejecutar componentes de Azure, de terceros o personalizados.

    Los módulos de ML de IoT Edge pueden admitir Azure Machine Learning, modelos de ML de terceros o código personalizado. La solución actual usa un modelo de ML de código abierto de terceros denominado Cogniac para puntuar los datos de las ruedas de los trenes y reconocer posibles defectos. El software de ML usa muestras históricas de imágenes de errores de alta y baja confianza para volver a entrenar su modelo de ML.

  • El tiempo de ejecución de IoT Edge, que consta del agente de IoT y el centro de IoT Edge, se ejecuta en los dispositivos de IoT Edge para administrar y coordinar los módulos implementados.

  • Una interfaz basada en la nube permite la supervisión y administración remotas.

El sistema también usa los siguientes componentes en la nube de Azure:

  • Azure IoT Hub permite comunicaciones con la nube bidireccionales y seguras, y la administración y supervisión de los módulos IoT Edge.

  • Azure Blob Storage es el almacenamiento de objetos para la nube. Blob Storage está optimizado para el almacenamiento de cantidades masivas de datos no estructurados, como los datos de imagen de este ejemplo.

  • Azure Cosmos DB es un servicio de base de datos NoSQL totalmente administrado con tiempos de respuesta bajos, y alta disponibilidad y escalabilidad.

Alternativas

  • La arquitectura de IoT Edge usa varios módulos, pero se pueden condensar en un solo módulo, en función de los requisitos de rendimiento de la solución o la estructura del equipo de desarrollo.

  • La compañía ferroviaria solo posee el sistema de inferencia y se basa en un proveedor de terceros para la generación de modelos de ML. La naturaleza de la caja negra del módulo de ML plantea algún riesgo de dependencia. El mantenimiento de la solución a largo plazo requiere comprender cómo el tercero rige y comparte los recursos. Es posible que el sistema pueda usar módulos de ML de marcador de posición para futuras involucraciones cuando los recursos de ML no estén disponibles.

Detalles del escenario

Azure IoT Edge permite un procesamiento y almacenamiento de datos más cercano al origen de datos. El procesamiento de cargas de trabajo en el perímetro permite respuestas rápidas y coherentes con menos dependencia de los recursos y la conectividad en la nube.

Acercar el aprendizaje automático y la lógica de negocios a los orígenes de datos significa que los dispositivos pueden reaccionar más rápido a cambios locales y eventos críticos. Los dispositivos pueden funcionar sin conexión de forma confiable o cuando la conectividad es limitada.

Los procesos perimetrales pueden incorporar modelos de inteligencia artificial (IA) y aprendizaje automático (ML) para crear dispositivos y redes de inteligencia perimetral. La red perimetral puede determinar qué datos se van a enviar a la nube para un procesamiento adicional y dar prioridad a los datos urgentes e importantes.

La empresa de ferrocarriles quería usar Azure IoT Edge para mejorar la seguridad y la eficacia al proporcionar:

  • Identificación proactiva de componentes defectuosos.
  • Programación predictiva de mantenimiento y reparación.
  • Mejora continua del análisis y las predicciones.

El proyecto piloto de la solución IoT Edge es un sistema de análisis del estado de las ruedas de los trenes. En este sistema, más de 4000 detectores situados junto a las vías supervisan y transmiten continuamente datos de las ruedas de todos los trenes de la empresa. Los detectores:

  • Miden el calor y la fuerza del equipamiento en las vías.
  • Escuchan los defectos invisibles de las ruedas o las fisuras de las ruedas.
  • Identifican las partes que faltan o que están fuera de su lugar.

Los módulos de Azure IoT Edge procesan y actúan sobre los datos de streaming continuos casi en tiempo real. Los módulos de IoT Edge se ejecutan en el hardware de servidor en casetas junto a las vías, lo que permite una futura implementación paralela de otras cargas de trabajo. La solución basada en IoT Edge:

  • Identifica el equipamiento en riesgo.
  • Determina la urgencia de la reparación.
  • Genera alertas.
  • Envía los datos a la nube de Azure para su almacenamiento.

El sistema de análisis del estado de las ruedas proporciona una identificación temprana de posibles errores del equipamiento que podrían provocar un descarrilamiento del tren. La empresa puede usar los datos almacenados para detectar tendencias e informar de las programaciones de mantenimiento normativas.

Posibles casos de uso

Esta solución es ideal para los sectores de transporte, telecomunicaciones y fabricación. Se centra en los escenarios siguientes:

  • Una red de telecomunicaciones que tiene que mantener un tiempo de actividad del 99 % o mejor.
  • Control de calidad de la producción, reparación de equipamientos y mantenimiento predictivo en una fábrica.
  • Un sistema de seguridad del transporte que deba procesar datos de streaming en tiempo real con poca o ninguna latencia.
  • Sistemas de tránsito que necesiten proporcionar alertas y notificaciones programadas a tiempo.

Consideraciones

Estas consideraciones implementan los pilares del marco de buena arquitectura de Azure, que es un conjunto de principios guía que se pueden usar para mejorar la calidad de una carga de trabajo. Para más información, consulte Marco de buena arquitectura de Microsoft Azure.

Hay varias consideraciones que son de aplicación para este ejemplo.

Operaciones

La solución implementada requiere una suscripción de Azure con permiso para agregar entidades de servicio y la capacidad de crear recursos de Azure. Para obtener más información, vea Registros de contenedor y entidades de servicio.

Un flujo de trabajo de Azure Pipelines compila, prueba, implementa y archiva la solución de IoT Edge a través de tareas de Azure IoT Edge integradas. La compañía ferroviaria hospeda el sistema de integración continua e implementación continua (CI/CD) localmente. El siguiente diagrama muestra la arquitectura de DevOps de la implementación:

Diagrama de la arquitectura de DevOps.

  1. En la primera canalización de CI, una inserción de código en el repositorio de Git desencadena la compilación del módulo IoT Edge y registra la imagen del módulo en Azure Container Registry.

  2. La finalización de la canalización de CI desencadena la canalización de CD, que genera el manifiesto de implementación e implementa el módulo en los dispositivos IoT Edge.

La implementación presenta tres entornos: Desarrollo, control de calidad y producción. La promoción de módulos de desarrollo a control de calidad y de control de calidad a producción es compatible con las comprobaciones controladas automáticas y manuales.

La generación e implementación de la solución también usa lo siguiente:

  • Azure CLI
  • Docker CE o Moby para la compilación e implementación de módulos de contenedor
  • Para el desarrollo, Visual Studio o Visual Studio Code con Docker, Azure IoT y las extensiones de lenguaje pertinentes.

Rendimiento

  • El sistema requiere un tiempo de actividad del 99 % y la entrega de mensajes local en 24 horas. El valor de Calidad de servicio (QoS) de la última milla de conectividad entre la caseta y Azure determina el valor de QoS de los datos del perímetro. Los proveedores de servicios de Internet (ISP) locales rigen la última milla de conectividad y es posible que no admitan la calidad de servicio necesaria para las notificaciones o la carga masiva de datos.

  • Este sistema no interactúa con las cámaras de las ruedas y los almacenes de datos de respaldo, por lo que no tiene ningún control ni capacidad para generar alertas de errores en el sistema de cámaras o el servidor de imágenes.

  • Esta solución no reemplaza los requisitos de inspección manual existentes determinados por las autoridades normativas federales y la compañía.

Seguridad

La seguridad proporciona garantías contra ataques deliberados y el abuso de datos y sistemas valiosos. Para más información, consulte Introducción al pilar de seguridad.

La seguridad y la supervisión son consideraciones para los sistemas de IoT Edge. En este ejemplo:

  • La solución empresarial de terceros existente de la compañía cubría la supervisión del sistema.
  • La seguridad física de las casetas situadas junto a las vías y la seguridad de red ya estaban en funcionamiento.
  • Las conexiones desde IoT Edge a la nube son seguras de manera predeterminada.

Pasos siguientes

Proyectos de GitHub:

Recursos de aprendizaje sobre la solución: