Arquitetura do IoT Plug and Play

O IoT Plug and Play permite que os criadores de solução integrem dispositivos IoT às suas soluções sem nenhuma configuração manual. No núcleo do IoT Plug and Play, há um modelo de dispositivo que descreve as funcionalidades para um aplicativo habilitado para IoT Plug and Play. Esse modelo é estruturado como um conjunto de interfaces que definem:

  • Propriedades que representam o estado somente leitura ou gravável de um dispositivo ou outra entidade. Por exemplo, um número de série do dispositivo pode ser uma propriedade somente leitura e uma temperatura de destino em um termostato pode ser uma propriedade gravável.
  • Telemetria, que são os dados emitidos por um dispositivo, sejam esses dados um fluxo regular de leituras de sensor, um erro ocasional ou uma mensagem informativa.
  • Comandos que descrevem uma função ou operação que pode ser feita em um dispositivo. Por exemplo, um comando pode reinicializar um gateway ou tirar uma foto usando uma câmera remota.

Cada modelo e interface tem uma ID exclusiva.

O seguinte diagrama mostra os principais elementos de uma solução de IoT Plug and Play:

IoT Plug and Play architecture

Repositório de modelos

O repositório de modelo contém definições de modelo e de interface. Você define modelos e interfaces usando a DTDL (Linguagem de Definição de Gêmeos Digitais).

A interface do usuário da Web permite que você gerencie modelos e interfaces.

O repositório de modelo tem controles internos de acesso baseados em função para limitar o acesso às definições de interface.

Dispositivos

Um fabricante de dispositivos implementa o código a ser executado em um dispositivo de IoT usando um dos SDKs do dispositivo IoT do Azure. Os SDKs do dispositivo ajudam o fabricante a:

  • Criar uma conexão segura com um hub IoT.
  • Registrar o dispositivo com o Hub IoT e anunciar a ID do modelo que identifica a coleção de interfaces de DTDL que o dispositivo implementa.
  • Sincronizar as propriedades definidas nas interfaces de DTDL entre o dispositivo e o Hub IoT.
  • Adicione manipuladores de comandos para os comandos definidos nas interfaces de DTDL.
  • Envie telemetria ao Hub IoT.

Gateway IoT Edge

Um gateway de IoT Edge atua como um intermediário para conectar dispositivos de IoT Plug and Play que não podem se conectar diretamente a um hub IoT. Veja mais informações em Como um dispositivo IoT Edge pode ser usado como um gateway.

Módulos do IoT Edge

Com um módulo IoT Edge, é possível implantar e gerenciar lógica de negócios na borda. Os módulos do Azure IoT Edge são a menor unidade de computação gerenciada pelo IoT Edge e podem conter serviços do Azure (por exemplo, o Azure Stream Analytics) ou seu próprio código específico à solução.

O hub do IoT Edge é um dos módulos que compõem o runtime do Azure IoT Edge. Ele atua como um proxy local para o Hub IoT expondo os mesmos pontos de extremidade de protocolo que o Hub IoT. Essa consistência significa que os clientes (sejam dispositivos ou módulos) podem se conectar no runtime do IoT Edge como faria para no Hub IoT.

Os SDKs do dispositivo ajudam os fabricantes de módulo a:

  • Usar o hub do IoT Edge para conectar-se com segurança ao hub IoT.
  • Registrar o módulo com o hub IoT e anunciar a ID do modelo que identifica a coleção de interfaces de DTDL que o dispositivo implementa.
  • Sincronizar as propriedades definidas nas interfaces de DTDL entre o dispositivo e o Hub IoT.
  • Adicione manipuladores de comandos para os comandos definidos nas interfaces de DTDL.
  • Envie telemetria ao Hub IoT.

Hub IoT

O Hub IoT é um serviço hospedado em nuvem que atua como um hub central de mensagens para a comunicação bidirecional entre uma solução de IoT e os dispositivos que ela gerencia.

Um hub IoT:

  • Disponibiliza a ID do modelo implementada por um dispositivo a uma solução de back-end.
  • Mantém o gêmeo digital associado a cada dispositivo de Plug and Play conectado ao hub.
  • Encaminha fluxos de telemetria para outros serviços para processamento ou armazenamento.
  • Roteia eventos de alteração de gêmeo digital para outros serviços para habilitar o monitoramento de dispositivo.

Solução de back-end

Uma solução de back-end monitora e controla dispositivos conectados por meio da interação com gêmeos digitais no hub IoT. Use um dos SDKs de serviço para implementar sua solução de back-end. Para entender as funcionalidades de um dispositivo conectado, o back-end da solução:

  1. Recupera a ID do modelo que o dispositivo registrou com o hub IoT.
  2. Usa a ID do modelo para recuperar as definições de interface de qualquer repositório de modelo.
  3. Usa o analisador de modelo para extrair informações das definições de interface.

A solução de back-end pode usar as informações das definições de interface para:

  • Ler os valores de propriedade informados pelos dispositivos.
  • Atualizar propriedades graváveis em um dispositivo.
  • Chamar comandos implementados por um dispositivo.
  • Entenda o formato da telemetria enviada por um dispositivo.

Próximas etapas

Agora que você tem uma visão geral da arquitetura de uma solução IoT Plug and Play, as próximas etapas são para saber mais sobre: