Guia de conectividade de dispositivos do IoT Central
Um aplicativo da IoT Central permite que você monitore e gerencie milhões de dispositivos ao longo de seu ciclo de vida. Este guia destina-se a desenvolvedores de dispositivos que implementam código para execução em dispositivos que se conectam ao IoT Central.
Os dispositivos interagem com um aplicativo do IoT Central usando os seguintes primitivos:
- Telemetria são dados que um dispositivo envia para o IoT Central. Por exemplo, um fluxo de valores de temperatura de um sensor integrado.
- Propriedades são valores de estado que um dispositivo relata para o IoT Central. Por exemplo, a versão atual do firmware do dispositivo. Você também pode ter propriedades graváveis que o IoT Central pode atualizar no dispositivo como uma temperatura de destino.
- Comandos são chamados do IoT Central para controlar o comportamento de um dispositivo. Por exemplo, seu aplicativo do IoT Central pode chamar um comando para reinicializar um dispositivo.
Tipos de dispositivo
As seções a seguir descrevem os principais tipos de dispositivo que você pode conectar a um aplicativo do IoT Central:
Dispositivo IoT
Um dispositivo IoT é um dispositivo autônomo que se conecta diretamente ao IoT Central. Um dispositivo IoT normalmente envia telemetria de sensores integrados ou conectados a ele para o seu aplicativo do IoT Central. Dispositivos autônomos também podem relatar valores de propriedade, receber valores de propriedade graváveis e responder a comandos.
Dispositivo do IoT Edge
Um dispositivo do IoT Edge se conecta diretamente ao IoT Central. Um dispositivo do IoT Edge também pode enviar a própria telemetria, relatar suas propriedades e responder a atualizações de propriedade e comandos graváveis. Módulos do IoT Edge processam dados localmente no dispositivo do IoT Edge. Um dispositivo do IoT Edge também pode atuar como um intermediário para outros dispositivos conhecidos como dispositivos downstream. Cenários que usam dispositivos do IoT Edge incluem:
- Agregue ou filtre a telemetria antes de enviá-la para a IoT Central. Essa abordagem pode ajudar a reduzir os custos de envio de dados ao IoT Central.
- Habilitar dispositivos que não podem se conectar diretamente ao IoT Central para se conectarem por meio do dispositivo do IoT Edge. Por exemplo, um dispositivo downstream pode usar Bluetooth para se conectar ao dispositivo do IoT Edge, que por sua vez se conecta pela Internet ao IoT Central.
- Controlar dispositivos downstream localmente para evitar a latência associada à conexão com o IoT Central pela Internet.
O IoT Central vê apenas o dispositivo do IoT Edge, não os dispositivos downstream conectados a ele.
Para saber mais, confira Adicionar um dispositivo Azure IoT Edge ao aplicativo do Azure IoT Central.
Gateways
Um dispositivo de gateway gerencia um ou mais dispositivos downstream que se conectam ao seu aplicativo do IoT Central. Um dispositivo de gateway pode processar a telemetria de dispositivos downstream antes de encaminhá-la para seu aplicativo da IoT Central. Dispositivos IoT e do IoT Edge podem atuar como gateways. Para saber mais, consulte Definir um novo tipo de dispositivo de gateway IOT em seu aplicativo do Azure IoT Central e Como conectar dispositivos por meio de um gateway IOT Edge transparente.
Como os dispositivos se conectam
À medida que você conecta um dispositivo ao IoT Central, ele passa pelos seguintes estágios: registrado, provisionadoe conectado.
Para saber por que os dispositivos devem sempre usar o Serviço de Provisionamento de Dispositivos para se conectar à IoT Central, confira Implementação de dispositivo e boas práticas da IoT Central.
Para saber como monitorar o status de um dispositivo, consulte Monitorar seus dispositivos.
Registrar um dispositivo
Ao registrar um dispositivo no IoT Central, é necessário informar a ID exclusiva do dispositivo que será conectado ao aplicativo. Opcionalmente, neste estágio, você pode atribuir o dispositivo a um modelo de dispositivo que declara os recursos do dispositivo para seu aplicativo.
Dica
Uma identificação do dispositivo pode conter letras, números e o caractere -
.
Há três maneiras de registrar um dispositivo em um aplicativo IoT Central:
Registre automaticamente os dispositivos ao tentar se conectar pela primeira vez. Nesse cenário, os OEMs fabricam dispositivos em massa que podem ser conectados sem precisar de um registro anterior. Para saber mais, consulte Registrar automaticamente os dispositivos.
Adicione dispositivos em massa a partir de um arquivo CSV. Para saber mais, confira Importar dispositivos.
Use a página Dispositivos em seu aplicativo IoT Central para registrar dispositivos individualmente. Para saber mais, consulte Adicionar um dispositivo.
Outra opção é exigir que um operador aprove o dispositivo antes que ele comece a enviar dados.
Dica
Na página Permissões > Conexão do dispositivo, a opção Aprovar automaticamente controla se o operador precisa aprovar o dispositivo manualmente antes de começar a enviar dados.
Você só precisa registrar um dispositivo uma vez no aplicativo IoT Central.
Provisionar um dispositivo
Quando um dispositivo tenta primeiro se conectar ao seu aplicativo IoT Central, ele inicia o processo conectando-se ao serviço de provisionamento de dispositivos (DPS). O DPS verifica as credenciais do dispositivo e, se elas forem válidas, provisiona o dispositivo com a cadeia de conexão para um dos hubs IoT internos do IoT Central. O DPS usa as configurações de registro de grupo em seu aplicativo IoT Central para gerenciar esse processo de provisionamento para você.
Dica
O dispositivo também envia o valor de escopo da ID que informa ao DPS a qual o aplicativo IoT Central que o dispositivo está conectado. Você pode pesquisar o escopo da ID em seu aplicativo IoT Central na página Permissões > grupo de conexão de dispositivo.
Normalmente, um dispositivo deve armazenar em cache a cadeia de conexão que recebe do DPS, mas deve estar preparado para recuperar novos detalhes de conexão se a conexão atual falhar. Para saber mais, confira Tratar falhas de conexão.
O uso do DPS permite que:
- O IoT Central para integrar e conectar dispositivos em escala.
- Você gere credenciais de dispositivo e configure os dispositivos offline sem registrar os dispositivos por meio da interface do usuário do IoT Central.
- Você use as próprias identificações do dispositivo para registrar dispositivos no IoT Central. O uso das próprias identificações do dispositivo simplifica a integração aos sistemas de back-office existentes.
- Uma só maneira consistente de conectar dispositivos ao IoT Central.
Autenticar e conectar o dispositivo
Um dispositivo usa suas credenciais e a cadeia de conexão recebida do DPS para se conectar e se autenticar com seu aplicativo IoT Central. Um dispositivo também deve enviar uma ID de modelo que identifica o modelo de dispositivo ao qual ele está atribuído.
O IoT Central é compatível com dois tipos de credencial de dispositivo:
- Assinaturas de acesso compartilhado
- Certificados X.509
Para saber mais, confira Conceitos de autenticação de dispositivo.
Todos os dados trocados entre dispositivos e o Azure IoT Central são criptografados. O Hub IoT autentica todas as solicitações de um dispositivo que conecta a qualquer ponto de extremidade do Hub IoT voltado para o dispositivo. Para evitar a troca de credenciais pela rede, um dispositivo usa tokens assinados para autenticar. Para obter mais informações, consulte Controlar o acesso ao Hub IoT.
Padrões de conectividade
Os desenvolvedores de dispositivos normalmente usam um dos SDKs de dispositivos para implementar dispositivos que se conectam a um aplicativo do IoT Central. Alguns cenários, como para dispositivos que não podem se conectar à Internet, também exigem um gateway.
Um design de solução deve levar em conta o padrão de conectividade necessário do dispositivo. Esses padrões se enquadram em duas categorias amplas. Ambas as categorias incluem dispositivos que enviam telemetria para o seu aplicativo do IoT Central:
Conexões persistentes
As conexões persistentes são necessárias para que sua solução precise de recursos de comando e controle. Em cenários de comando e controle, o aplicativo do IoT Central envia comandos aos dispositivos para controlar o comportamento deles quase em tempo real. As conexões persistentes mantêm uma conexão de rede com a nuvem e se reconectam sempre que há uma interrupção. Use o protocolo MQTT ou AMQP para conexões de dispositivos persistentes ao IoT Central.
As seguintes opções dão suporte a conexões de dispositivos persistentes:
Use os SDKs de dispositivos IoT para conectar dispositivos e enviar telemetria:
Os SDKs de dispositivos habilitam os protocolos MQTT e AMQP para criar conexões persistentes com o IoT Central.
Conecte dispositivos por meio de uma rede local a um dispositivo do IoT Edge que encaminha telemetria ao IoT Central:
Um dispositivo do IoT Edge pode estabelecer uma conexão persistente com o IoT Central. Para dispositivos que não podem se conectar à Internet ou que exigem isolamento de rede, use um dispositivo do IoT Edge como um gateway local. O gateway encaminha a telemetria do dispositivo para o IoT Central. Essa opção permite o comando e o controle dos dispositivos downstream conectados ao dispositivo do IoT Edge.
Para saber mais, confiraConectar dispositivos Azure IoT Edge a um aplicativo do Azure IoT Central.
Use a Ponte de Dispositivo IoT Central para conectar dispositivos que usam um protocolo personalizado:
Alguns dispositivos usam protocolos ou codificações, como LWM2M ou COAP, para os quais o IoT Central não dá suporte no momento. A Ponte de Dispositivo IoT Central atua como um tradutor que encaminha telemetria para o IoT Central.
Para saber mais, confira o repositório GitHub Ponte de Dispositivo Azure IoT Central.
Conexões efêmeras
As conexões efêmeras são breves conexões para que os dispositivos enviem telemetria para seu aplicativo do IoT Central. Depois que um dispositivo envia a telemetria, ele remove a conexão. O dispositivo se reconecta quando tem mais telemetria a ser enviada. As conexões efêmeras não são adequadas para cenários de comando e controle.
As seguintes opções dão suporte a conexões de dispositivos efêmeras:
Conecte dispositivos e envie telemetria usando HTTP:
O IoT Central dá suporte a clientes de dispositivo que usam a API HTTP para enviar telemetria. Para saber mais, confira a documentação da API Enviar Evento de Dispositivo.
Observação
Use o DPS para provisionar e registrar seu dispositivo com IoT Central antes de usar a API HTTP para enviar telemetria.
Use a Ponte de Dispositivo IoT Central no modo sem estado para conectar dispositivos:
Implante a Ponte de Dispositivo IoT Central como uma função do Azure. A função aceita dados de telemetria de entrada como solicitações HTTP e os encaminha para o IoT Central. A Ponte de Dispositivo IoT Central integra-se ao DPS e lida automaticamente com o provisionamento de dispositivos para você.
Para saber mais, confira o repositório GitHub Ponte de Dispositivo do Azure IoT Central.
Use a Ponte de Dispositivo IoT Central no modo sem estado para conectar nuvens externas:
Use a Ponte de Dispositivo Azure IoT Central para encaminhar mensagens para o IoT Central de outras nuvens IoT, como SigFox, Particle e The Things Network.
Para saber mais, confira o repositório GitHub Ponte de Dispositivo do Azure IoT Central.
Transformação de dados e computação personalizada na entrada
Alguns cenários exigem telemetria do dispositivo aumentada usando dados de sistemas ou repositórios externos. Aumentar a telemetria antes de chegar ao IoT Central permite que recursos como painéis e regras usem os dados aumentados.
Alguns cenários exigem que você transforme a telemetria antes de chegar ao IoT Central. Por exemplo, transformando a telemetria de formatos herdados.
As seguintes opções estão disponíveis para transformações ou computações personalizadas antes que o IoT Central realize a ingestão da telemetria:
Use o IoT Edge:
Use módulos personalizados no IoT Edge para transformações e computações personalizadas. Use o IoT Edge quando seus dispositivos usarem os SDKs do dispositivo IoT do Azure.
Use a Ponte de Dispositivo IoT Central:
Use os adaptadores da Ponte de Dispositivo IoT Central para transformações e cálculos personalizados.
Para saber mais, confira Transformar dados para o IoT Central.
Próximas etapas
Se você é um desenvolvedor de dispositivos e deseja se aprofundar em algum código, a próxima etapa sugerida é Criar e conectar um aplicativo cliente ao seu aplicativo do Azure IoT Central.
Se quiser saber mais sobre a implementação do dispositivo, confira Implementação de dispositivo e práticas recomendadas para o IoT Central.
Para saber mais sobre como usar o IoT Central, as próximas etapas sugeridas são experimentar os guias de início rápido, começando por Criar um aplicativo do Azure IoT Central.