Tutorial: Configurar o ambiente para os inícios rápidos e tutoriais do IoT Plug and Play

Para concluir qualquer um dos tutoriais e guias de início rápido do IoT Plug and Play, você precisa configurar um hub IoT e o DPS (Serviço de Provisionamento de Dispositivos) na assinatura do Azure. Você também precisará de cópias locais dos arquivos de modelo usados pelos aplicativos de exemplo e pela ferramenta Azure IoT Explorer.

Pré-requisitos

Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.

Preparar o ambiente para a CLI do Azure

Criar os recursos

Criar um grupo de recursos do Azure para os recursos:

az group create --name my-pnp-resourcegroup --location centralus

Crie um Hub IoT. O comando a seguir usa o nome my-pnp-hub como um exemplo para o nome do hub IoT a ser criado. Escolha um nome exclusivo para o hub IoT a ser usado no lugar de my-pnp-hub:

az iot hub create --name my-pnp-hub --resource-group my-pnp-resourcegroup --sku F1 --partition-count 2

Crie uma instância do DPS. O comando a seguir usa o nome my-pnp-dps como um exemplo para o nome da instância do DPS a ser criada. Escolha um nome exclusivo para a instância do DPS a ser usada no lugar de my-pnp-dps:

az iot dps create --name my-pnp-dps --resource-group my-pnp-resourcegroup

Para vincular a instância do DPS ao hub IoT, use os comandos a seguir. Substitua my-pnp-dps e my-pnp-hub pelos nomes exclusivos que você escolheu anteriormente:

hubConnectionString=$(az iot hub connection-string show -n my-pnp-hub --key primary --query connectionString -o tsv)
az iot dps linked-hub create --dps-name my-pnp-dps --resource-group my-pnp-resourcegroup --location centralus --connection-string $hubConnectionString

Recuperar as configurações

Alguns guias de início rápido e tutoriais usam a cadeia de conexão para o hub IoT. Você também precisa da cadeia de conexão ao configurar a ferramenta Azure IoT Explorer. Recupere a cadeia de conexão e anote-a agora. Substitua my-pnp-hub pelo nome exclusivo escolhido para o hub IoT:

az iot hub connection-string show -n my-pnp-hub --key primary --query connectionString

A maioria dos guias de início rápido e tutoriais usam o escopo de ID da sua configuração de DPS. Recupere o escopo da ID e anote-o agora. Substitua my-pnp-dps pelo nome exclusivo escolhido para a instância do DPS:

az iot dps show --name my-pnp-dps --query properties.idScope

Todos os guias de início rápido e tutoriais usam um registro de dispositivo de DPS. Use o comando a seguir para criar um registro de dispositivo individual do my-pnp-device na instância do DPS. Substitua my-pnp-dps pelo nome exclusivo escolhido para a instância do DPS. Anote os valores de ID do registro e de chave primária a serem usados nos guias de início rápido e tutoriais:

az iot dps enrollment create --attestation-type symmetrickey --dps-name my-pnp-dps --resource-group my-pnp-resourcegroup --enrollment-id my-pnp-device --device-id my-pnp-device --query '{registrationID:registrationId,primaryKey:attestation.symmetricKey.primaryKey}'

Criar variáveis de ambiente

Crie quatro variáveis de ambiente para configurar os exemplos nos guias de início rápido e tutoriais para usar o DPS (Serviço de Provisionamento de Dispositivos) a fim de se conectar ao hub IoT:

  • IOTHUB_DEVICE_SECURITY_TYPE: o valor DPS.
  • IOTHUB_DEVICE_DPS_ID_SCOPE: o escopo da ID do DPS anotada anteriormente.
  • IOTHUB_DEVICE_DPS_DEVICE_ID: o valor my-pnp-device.
  • IOTHUB_DEVICE_DPS_DEVICE_KEY: a chave primária de registro anotada anteriormente.
  • IOTHUB_DEVICE_DPS_ENDPOINT: o valor global.azure-devices-provisioning.net

Os exemplos de serviço precisam das seguintes variáveis de ambiente para identificar o hub e o dispositivo aos quais se conectar:

  • IOTHUB_CONNECTION_STRING: a cadeia de conexão do hub IoT anotada anteriormente.
  • IOTHUB_DEVICE_ID: my-pnp-device.

Por exemplo, em um shell Bash do Linux:

export IOTHUB_DEVICE_SECURITY_TYPE="DPS"
export IOTHUB_DEVICE_DPS_ID_SCOPE="<Your ID scope>"
export IOTHUB_DEVICE_DPS_DEVICE_ID="my-pnp-device"
export IOTHUB_DEVICE_DPS_DEVICE_KEY="<Your enrolment primary key>"
export IOTHUB_DEVICE_DPS_ENDPOINT="global.azure-devices-provisioning.net"
export IOTHUB_CONNECTION_STRING="<Your IoT hub connection string>"
export IOTHUB_DEVICE_ID="my-pnp-device"

Por exemplo, em uma linha de comando do Windows:

set IOTHUB_DEVICE_SECURITY_TYPE=DPS
set IOTHUB_DEVICE_DPS_ID_SCOPE=<Your ID scope>
set IOTHUB_DEVICE_DPS_DEVICE_ID=my-pnp-device
set IOTHUB_DEVICE_DPS_DEVICE_KEY=<Your enrolment primary key>
set IOTHUB_DEVICE_DPS_ENDPOINT=global.azure-devices-provisioning.net
set IOTHUB_CONNECTION_STRING=<Your IoT hub connection string>
set IOTHUB_DEVICE_ID=my-pnp-device

Baixar os arquivos de modelo

Os guias de início rápido e os tutoriais usam arquivos de modelo de exemplo para o controlador de temperatura e dispositivos de termostato. Para baixar os arquivos de modelo de exemplo:

  1. Crie uma pasta chamada models no computador local.

  2. Clique com o botão direito do mouse em TemperatureController.json e salve o arquivo JSON na pasta models.

  3. Clique com o botão direito do mouse em Thermostat.json e salve o arquivo JSON na pasta models.

Instalar o Azure IoT Explorer

Os guias de início rápido e os tutoriais usam a ferramenta Azure IoT Explorer. Acesse as versões do Azure IoT Explorer e expanda a lista de ativos para a versão mais recente. Baixe e instale a versão mais recente do aplicativo para o seu sistema operacional.

Na primeira vez que você executar a ferramenta, você será solicitado a fornecer a cadeia de conexão do hub IoT. Use a cadeia de conexão anotada anteriormente.

Configure a ferramenta para usar os arquivos de modelo que você baixou anteriormente. Na home page da ferramenta, selecione Configurações do IoT Plug and Play e + Adicionar > Pasta local. Selecione a pasta modelos que você criou anteriormente. Em seguida, selecione Salvar para salvar as configurações.

Para saber mais, confira Instalar e usar o Azure IoT Explorer.

Limpar os recursos

Você pode usar o hub IoT e a instância do DPS para todos os guias de início rápido e tutoriais do IoT Plug and Play, então você só precisa concluir as etapas neste artigo uma vez. Quando tiver terminado, você poderá removê-las da sua assinatura com o seguinte comando:

az group delete --name my-pnp-resourcegroup

Próximas etapas

Agora que configurou seu ambiente, você pode experimentar um dos guias de início rápido ou tutoriais, por exemplo: