Editar

Sistema de manutenção e segurança ferroviária IoT Edge

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

Este artigo descreve uma colaboração entre a Microsoft e uma grande empresa ferroviária para criar uma solução de manutenção e segurança de trens de Internet das Coisas (IoT).

Arquitetura

Diagrama de arquitetura de solução mostrando os módulos do IoT Edge nos bangalôs de pista. Os módulos Edge usam aprendizado de máquina para identificar riscos de falha. O módulo manipulador de alertas carrega dados de imagem no Armazenamento de Blobs do Azure. O Azure Edge Hub carrega metadados e mensagens associados por meio do Hub IoT do Azure no armazenamento do Azure Cosmos DB.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de dados

  1. Um servidor de arquivos de imagem NAS (Network Attached Storage, armazenamento conectado à rede) em um bangalô na via serve imagens de rodas de trem processadas e categorizadas. Três imagens de cada roda criam uma imagem costurada.
  2. O módulo de sondagem do IoT Edge alerta o dispositivo IoT Edge de que novas imagens estão disponíveis para processamento.
  3. O módulo de ML do IoT Edge executa um modelo de ML de terceiros que processa as imagens e identifica áreas de roda que precisam de mais inspeção.
  4. O Manipulador de Alertas do IoT Edge carrega todas as imagens no Armazenamento de Blobs do Azure, começando com imagens com defeitos potenciais, e retorna os URIs de blob de imagem.
  5. O módulo IoT Edge Hub associa os URIs de imagem a metadados de imagem, como Número do Equipamento ou do Carro, Eixo, Carimbo de data/hora e Localização do detetor. O módulo carrega os metadados e alertas para o Hub IoT do Azure.
  6. O Hub IoT envia os metadados por meio de Hubs de Eventos e Azure Functions para um banco de dados do Azure Cosmos DB.
  7. O banco de dados do Azure Cosmos DB associa os metadados de imagem aos URIs das imagens armazenadas no Armazenamento de Blobs do Azure. O sistema pode usar os dados do Azure Cosmos DB para reconhecimento de defeitos, análise de tendências, manutenção preditiva e retreinamento de modelos de ML.

Componentes

Este exemplo implanta dispositivos do Azure IoT Edge em bangalôs de pista, usando hardware de classe de servidor com placas de automação industrial personalizadas e unidades de processamento gráfico (GPUs) para desempenho.

O IoT Edge é composto por três componentes:

  • Os módulos do IoT Edge são contêineres que podem executar o Azure, componentes de terceiros ou personalizados.

    Os módulos de ML do IoT Edge podem dar suporte ao Azure Machine Learning, modelos de ML de terceiros ou código personalizado. A solução atual usa um modelo de ML de código aberto de terceiros chamado Cogniac para pontuar dados de rodas de trem e reconhecer possíveis defeitos. O software de ML usa amostras históricas de imagens de falha de alta e baixa confiança para treinar novamente seu modelo de ML.

  • O tempo de execução do IoT Edge, que consiste no Agente IoT e no IoT Edge Hub, é executado nos dispositivos IoT Edge para gerenciar e coordenar os módulos implantados.

  • Uma interface baseada na nuvem permite a monitorização e gestão remotas.

O sistema também usa os seguintes componentes de nuvem do Azure:

  • O Hub IoT do Azure permite a comunicação, o gerenciamento e o monitoramento seguros e bidirecionais da nuvem dos módulos do IoT Edge.

  • O Armazenamento de Blobs do Azure é o armazenamento de objetos para a nuvem. O armazenamento de Blob é otimizado para armazenar grandes quantidades de dados não estruturados, como os dados de imagem neste exemplo.

  • O Azure Cosmos DB é um serviço de banco de dados NoSQL totalmente gerenciado com baixos tempos de resposta e alta disponibilidade e escalabilidade.

Alternativas

  • A arquitetura IoT Edge usa vários módulos, mas pode ser condensada em um único módulo, dependendo dos requisitos de desempenho da solução ou da estrutura da equipe de desenvolvimento.

  • A empresa ferroviária é proprietária apenas do sistema de inferência e depende de um fornecedor terceirizado para a geração do modelo de ML. A natureza de caixa preta do módulo ML representa algum risco de dependência. A manutenção da solução a longo prazo requer a compreensão de como o terceiro governa e compartilha ativos. O sistema pode ser capaz de usar módulos de ML de espaço reservado para compromissos futuros quando os ativos de ML não estiverem disponíveis.

Detalhes do cenário

O Azure IoT Edge permite o processamento e armazenamento de dados mais próximos da fonte de dados. O processamento de cargas de trabalho na borda permite respostas rápidas e consistentes com menos dependência da conectividade e dos recursos da nuvem.

Aproximar o aprendizado de máquina (ML) e a lógica de negócios das fontes de dados significa que os dispositivos podem reagir mais rapidamente a mudanças locais e eventos críticos. Os dispositivos podem operar de forma confiável off-line ou quando a conectividade é limitada.

A computação de borda pode incorporar modelos de inteligência artificial (IA) e ML para criar dispositivos e redes de borda inteligentes. A rede de borda pode determinar quais dados enviar para a nuvem para processamento adicional e priorizar dados urgentes e importantes.

A empresa ferroviária queria usar o Azure IoT Edge para melhorar a segurança e a eficiência, fornecendo:

  • Identificação proativa de componentes defeituosos.
  • Programação preditiva de manutenção e reparação.
  • Melhoria contínua de análises e previsões.

O projeto-piloto para a solução IoT Edge é um sistema de análise de integridade da roda de trem. Neste sistema, mais de 4.000 detetores de via monitoram continuamente e transmitem dados de rodas dos trens da empresa. Os detetores:

  • Meça o calor e a força dos equipamentos nas pistas.
  • Ouça se há defeitos invisíveis no rolamento da roda ou rachaduras nas rodas.
  • Identificar peças em falta ou extraviadas.

Os módulos do Azure IoT Edge processam e atuam nos dados de streaming contínuo quase em tempo real. Os módulos do IoT Edge são executados em hardware de classe de servidor em bangalôs de pista, permitindo a futura implantação paralela de outras cargas de trabalho. A solução baseada no IoT Edge:

  • Identifica equipamentos em risco.
  • Determina a urgência do reparo.
  • Gera alertas.
  • Envia dados para a nuvem do Azure para armazenamento.

O sistema de análise da integridade das rodas fornece a identificação precoce de possíveis falhas no equipamento que podem levar ao descarrilamento do trem. A empresa pode usar os dados armazenados para identificar tendências e informar cronogramas de manutenção prescritivos.

Potenciais casos de utilização

Esta solução é ideal para as indústrias de transporte, telecomunicações e manufatura. Centra-se nos seguintes cenários:

  • Uma rede de telecomunicações que tem de manter 99% ou mais tempo de atividade.
  • Controle de qualidade de produção, reparo de equipamentos e manutenção preditiva em uma fábrica.
  • Um sistema de segurança de transporte que deve processar dados de streaming em tempo real com pouca ou nenhuma latência.
  • Sistemas de trânsito que precisam fornecer notificações e alertas de programação em tempo hábil.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que podem ser usados para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.

Várias considerações se aplicam a este exemplo.

Operações

A solução implantada requer uma assinatura do Azure com permissão para adicionar entidades de serviço e a capacidade de criar recursos do Azure. Para obter mais informações, consulte Registros de contêiner e entidades de serviço.

Um fluxo de trabalho do Azure Pipelines cria, testa, implanta e arquiva a solução IoT Edge por meio de tarefas internas do Azure IoT Edge. A empresa ferroviária hospeda o sistema de integração contínua/implantação contínua (CI/CD) no local. O diagrama a seguir mostra a arquitetura DevOps para implantação:

Diagrama de arquitetura DevOps.

  1. No primeiro pipeline de CI, um push de código no repositório Git aciona a compilação do módulo IoT Edge e registra a imagem do módulo no Registro de Contêiner do Azure.

  2. A conclusão do pipeline de CI aciona o pipeline de CD, que gera o manifesto de implantação e implanta o módulo nos dispositivos IoT Edge.

A implantação tem três ambientes: Dev, QA e Production. A promoção de módulos de Dev para QA e de QA para Production suporta verificações automáticas e manuais fechadas.

A criação e implantação da solução também usa:

  • CLI do Azure
  • Docker CE ou Moby para criar e implantar os módulos de contêiner
  • Para desenvolvimento, Visual Studio ou Visual Studio Code com o Docker, Azure IoT e extensões de linguagem relevantes.

Desempenho

  • O sistema requer 99% de tempo de atividade e entrega de mensagens no local dentro de 24 horas. A Qualidade de Serviço (QoS) para a última milha de conectividade entre o bangalô e o Azure determina a QoS dos dados da borda. Os provedores de serviços de Internet (ISPs) locais controlam a última milha de conectividade e podem não suportar a QoS necessária para notificações ou upload de dados em massa.

  • Este sistema não faz interface com as câmeras de roda e armazenamentos de dados de apoio, portanto, não tem controle ou capacidade de gerar alertas sobre o sistema de câmera ou falhas do servidor de imagem.

  • Esta solução não substitui os requisitos de inspeção manual existentes determinados pela empresa e pelas autoridades reguladoras federais.

Segurança

A segurança oferece garantias contra ataques deliberados e o abuso de seus valiosos dados e sistemas. Para obter mais informações, consulte Visão geral do pilar de segurança.

Segurança e monitoramento são considerações para sistemas IoT Edge. Neste exemplo:

  • A solução empresarial de terceiros existente da empresa cobria o monitoramento do sistema.
  • A segurança física dos bungalows de via e a segurança da rede já estavam implementadas.
  • As conexões do IoT Edge com a nuvem são seguras por padrão.

Próximos passos

Projetos GitHub:

Recursos de aprendizagem da solução: