Exercício – Implantar um aplicativo de alto nível no Azure Sphere
Neste exercício, implantaremos um aplicativo de alto nível no Azure Sphere.
Etapa 1: Abrir o projeto de laboratório
Iniciar o Visual Studio Code.
No menu, clique em Arquivo e Abrir Pasta.
Abra a pasta laboratório do Azure-Sphere.
Abra a pasta Lab_2_Send_Telemetry_to_Azure_IoT.
Clique em Selecionar Pasta ou no botão OK para abrir o projeto.
Etapa 2: Configurar o aplicativo do Azure Sphere
No Visual Studio Code, abra o arquivo app_manifest.json. Os recursos que este aplicativo requer devem ser declarados na seção Capabilities.
Atualize as propriedades de conexão do aplicativo do Hub IoT do Azure.
- Atualize CmdArgs com o escopo da ID do DPS em IoT do Azure.
- Atualize DeviceAuthentication com a ID do Locatário do Azure Sphere. Lembre-se de que esse é o valor numérico retornado pela execução do comando azsphere tenant show-selected.
Atualize o AllowedConnections com o ponto de extremidade do serviço de provisionamento de dispositivo global, seu ponto de extremidade de DPS e seu ponto de extremidade do Hub IoT do Azure. Confira o exemplo abaixo para entender o formato correto desses pontos de extremidade.
Você pode formatar o documento app_manifest.json clicando com o botão direito do mouse nele e selecionando Formatar Documento no menu de contexto.
Examine seu arquivo manifest_app.json atualizado. Ele deve ser semelhante ao mostrado a seguir.
{ "SchemaVersion": 1, "Name": "AzureSphereIoTCentral", "ComponentId": "25025d2c-66da-4448-bae1-ac26fcdd3627", "EntryPoint": "/bin/app", "CmdArgs": [ "--ConnectionType", "DPS", "--ScopeID", "0ne0099999D" ], "Capabilities": { "Gpio": [ "$NETWORK_CONNECTED_LED", "$LED_RED", "$LED_GREEN", "$LED_BLUE" ], "I2cMaster": [ "$I2cMaster2" ], "PowerControls": [ "ForceReboot" ], "AllowedConnections": [ "global.azure-devices-provisioning.net", "<Your device provisioning service endpoint>", "<Your Azure IoT hub endpoint>" ], "DeviceAuthentication": "9d7e79eb-9999-43ce-9999-fa8888888894" }, "ApplicationType": "Default" }
Salve o arquivo app_manifest.json atualizado.
IMPORTANTE. Copie o conteúdo do arquivo app_manifest.json para o Bloco de notas ou o editor de texto de sua escolha, pois você precisará dessas informações de configuração para os próximos laboratórios.
Etapa 3: Selecionar a configuração da placa de desenvolvedor
Esses laboratórios dão suporte a placas de desenvolvedor da Avnet e da Seeed Studio. Você precisa definir a configuração que corresponde à sua placa de desenvolvimento. A configuração padrão da placa de desenvolvedor é destinada ao Kit de Início do Azure Sphere da Avnet Revisão 1. Se você tiver essa placa, não precisará realizar nenhuma configuração adicional.
Abra CMakeLists.txt.
Adicione # ao início da linha set AVNET para desabilitá-la.
Remova a marca de comentário do comando set que corresponde à sua placa de desenvolvimento do Azure Sphere.
set(AVNET TRUE "AVNET Azure Sphere Starter Kit Revision 1 ") # set(AVNET_REV_2 TRUE "AVNET Azure Sphere Starter Kit Revision 2 ") # set(SEEED_STUDIO_RDB TRUE "Seeed Studio Azure Sphere MT3620 Development Kit (aka Reference Design Board or rdb)") # set(SEEED_STUDIO_MINI TRUE "Seeed Studio Azure Sphere MT3620 Mini Dev Board")
Salve o arquivo. Isso vai gerar automaticamente o cache do CMake.
Etapa 4: Implantar o aplicativo no Azure Sphere
Iniciar o processo de build e implantação do aplicativo
Abra main.c.
Selecione CMake: [Depurar]: Pronto na barra de status do Visual Studio Code.
No Visual Studio Code, pressione F5 para compilar, implantar, iniciar e anexar o depurador remoto ao aplicativo que está agora executando o dispositivo do Azure Sphere.
Tente definir um ponto de interrupção na função MeasureSensorHandler. A função será chamada a cada 5 segundos.
Observação
Saiba como definir pontos de interrupção com esse artigo sobre Depuração no Visual Studio Code.
Exibir saída do depurador
Selecione a guia Saída do Visual Studio Code para exibir a saída das instruções Log_Debug no código.
Dica
Você pode abrir a guia de saída usando o atalho Ctrl + Shift + U do Visual Studio Code ou clicando na guia Saída.
Você verá o dispositivo negociando a segurança e, em seguida, ele começará a enviar telemetria para o Hub IoT do Azure.
Observação
Talvez algumas mensagens de ERRO: falha ao criar o identificador IoTHub sejam exibidas. Essas mensagens ocorrem enquanto a conexão com o Hub IoT do Azure está sendo negociada.
Etapa 5: Comportamento esperado do dispositivo
Kit de início MT3620 do Azure Sphere Revisões 1 e 2
- O LED da WLAN piscará a cada 5 segundos quando conectado ao Azure.
Kit de desenvolvimento MT3620 do Azure Sphere da Seeed Studio
- O LED da WLAN piscará a cada 5 segundos quando conectado ao Azure.
Mini Placa de Desenvolvimento MT3620 da Seeed Studio
- O LED do usuário piscará a cada 5 segundos quando conectado ao Azure.
Etapa 6: Exibir a telemetria do dispositivo usando o Azure IoT Explorer
Inicie o Azure IoT Explorer.
Clique em Exibir dispositivos neste hub.
Clique em seu dispositivo.
O nome do dispositivo é sua ID de Dispositivo do Azure Sphere. Você pode exibir sua ID de dispositivo executando o comando a seguir na linha de comando do PowerShell do Windows ou no Terminal do Linux.
azsphere device show-attached
Clique em Componentes de IoT Plug and Play no menu lateral.
Clique em Componente padrão.
Selecione Telemetria no menu.
Clique no botão Iniciar.
Clique em Mostrar eventos modelados para mapear o modelo de Plug and Play de IoT para a telemetria.
Fechar o Visual Studio Code
Agora, feche o Visual Studio Code.