Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este tutorial mostra como usar o Kit inicial do Microsoft Azure IoT para Raspberry Pi 3 para:
- Desenvolva um leitor de temperatura e umidade que possa se comunicar com a nuvem.
- Habilite e execute uma atualização de firmware remoto para atualizar o aplicativo cliente no Raspberry Pi.
O tutorial usa:
- O sistema operacional Raspbian, a linguagem de programação C e o SDK do Microsoft Azure IoT para C para implementar um dispositivo de exemplo.
- A solução pré-configurada de monitoramento remoto do IoT Suite funciona como o back-end baseado em nuvem.
Visão geral
Neste tutorial, você completa as seguintes etapas:
- Implante uma instância da solução pré-configurada de monitoramento remoto em sua assinatura do Azure. Esta etapa implanta e configura automaticamente vários serviços do Azure.
- Configure seu dispositivo e sensores para se comunicar com seu computador e a solução de monitoramento remoto.
- Atualize o código do dispositivo de exemplo para se conectar à solução de monitoramento remoto e envie a telemetria que você pode exibir no painel da solução.
- Use o código de dispositivo de exemplo para atualizar o aplicativo cliente.
Pré-requisitos
Para concluir este tutorial, você precisa de uma assinatura ativa do Azure.
Observação
Se você não tiver uma conta, poderá criar uma conta de avaliação gratuita em apenas alguns minutos. Para obter detalhes, consulte Avaliação gratuita do Azure.
Software necessário
Você precisa de um cliente SSH em seu computador desktop para permitir que você acesse remotamente a linha de comando no Raspberry Pi.
- O Windows não inclui um cliente SSH. É recomendável usar PuTTY.
- A maioria das distribuições do Linux e do sistema operacional Mac incluem o utilitário SSH de linha de comando. Para obter mais informações, consulte SSH usando Linux ou Mac OS.
Hardware necessário
Um computador desktop para permitir que você se conecte remotamente à linha de comando no Raspberry Pi.
Microsoft IoT Starter Kit para Raspberry Pi 3 ou componentes equivalentes. Este tutorial usa os seguintes itens do kit:
- Raspberry Pi 3
- Cartão MicroSD (com NOOBS)
- Um cabo MINI USB
- Um cabo Ethernet
- Sensor BME280
- Breadboard
- Fios de jumper
- Resistências
- Leds
Provisionar a solução
Se você ainda não provisionou a solução pré-configurada de monitoramento remoto em sua conta:
- Entre em azureiotsuite.com usando suas credenciais de conta do Azure e clique em + para criar uma solução.
- Clique em Selecionar no bloco de Monitoramento Remoto.
- Insira um nome da solução para sua solução de monitoramento remoto pré-configurada.
- Selecione a Região e Assinatura que você deseja usar para provisionar a solução.
- Clique em Criar Solução para iniciar o processo de provisionamento. Esse processo normalmente leva vários minutos para ser executado.
Aguarde a conclusão do processo de provisionamento
- Clique no bloco da sua solução com o status de Provisionamento .
- Observe os estados de provisionamento à medida que os serviços do Azure são implantados em sua assinatura do Azure.
- Depois que o provisionamento for concluído, o status será alterado para Ready.
- Clique no azulejo para ver os detalhes da sua solução no painel direito.
Observação
Se você estiver encontrando problemas ao implantar a solução pré-configurada, examine as Permissões de no site azureiotsuite.com e as perguntas frequentes . Se os problemas persistirem, crie um ticket de serviço no portal .
Há detalhes que você esperaria ver que não estão listados para sua solução? Dê sugestões de funcionalidades em User Voice.
Aviso
A solução de monitoramento remoto provisiona um conjunto de serviços do Azure em sua assinatura do Azure. A implantação reflete uma arquitetura empresarial real. Para evitar encargos desnecessários de consumo do Azure, exclua sua instância da solução pré-configurada em azureiotsuite.com quando terminar de usá-la. Se você precisar da solução pré-configurada novamente, poderá recriá-la facilmente. Para obter mais informações sobre como reduzir o consumo enquanto a solução de monitoramento remoto é executada, consulte Configurar soluções pré-configuradas do Azure IoT Suite para fins de demonstração.
Exibir o painel da solução
O painel da solução permite que você gerencie a solução implantada. Por exemplo, você pode exibir a telemetria, adicionar dispositivos e invocar métodos.
Quando o provisionamento for concluído e o bloco da solução pré-configurada indicar Pronto, escolha Iniciar para abrir o portal da solução de monitoramento remoto em uma nova guia.
Por padrão, o portal da solução mostra o painel . Você pode navegar até outras áreas do portal da solução usando o menu no lado esquerdo da página.
painel da solução pré-configurada de monitoramento remoto
Adicionar um dispositivo
Para que um dispositivo se conecte à solução pré-configurada, ele deve se identificar ao Hub IoT usando credenciais válidas. Você pode recuperar as credenciais do dispositivo do painel da solução. Você inclui as credenciais do dispositivo em seu aplicativo cliente mais adiante neste tutorial.
Se você ainda não fez isso, adicione um dispositivo personalizado à sua solução de monitoramento remoto. Conclua as seguintes etapas no painel da solução:
No canto inferior esquerdo do painel, clique em Adicionar um dispositivo.
No painel do dispositivo personalizado , clique em Adicionar novo.
Escolha Deixe-me definir minha própria ID do Dispositivo. Insira uma ID do dispositivo, como rasppi, clique em Verificar ID para verificar se você não usou o nome na sua solução, e então clique em Criar para provisionar o dispositivo.
Anote as credenciais do dispositivo (de ID do Dispositivo, de Nome de Host do Hub IoT e de Chave do Dispositivo). Seu aplicativo cliente no Raspberry Pi precisa desses valores para se conectar à solução de monitoramento remoto. Em seguida, clique em Concluído.
Selecione seu dispositivo na lista de dispositivos no painel da solução. Em seguida, no painel Detalhes do Dispositivo, clique em Habilitar Dispositivo. O estado do seu dispositivo agora está Executando. A solução de monitoramento remoto agora pode receber telemetria do seu dispositivo e invocar métodos no dispositivo.
Preparar seu Raspberry Pi
Instalar o Raspbian
Se esta for a primeira vez que você estiver usando o Raspberry Pi, será necessário instalar o sistema operacional Raspbian usando NOOBS no cartão SD incluído no kit. O do Raspberry Pi Software Guide descreve como instalar um sistema operacional no Raspberry Pi. Este tutorial pressupõe que você instalou o sistema operacional Raspbian no Raspberry Pi.
Observação
O cartão SD incluído no Kit inicial do Microsoft Azure IoT para Raspberry Pi 3 já tem o NOOBS instalado. Você pode inicializar o Raspberry Pi nesse cartão e optar por instalar o sistema operacional Raspbian.
Configurar o hardware
Este tutorial usa o sensor BME280 incluído no Microsoft Azure IoT Starter Kit for Raspberry Pi 3 para gerar dados de telemetria. Ele usa um LED para indicar quando o Raspberry Pi processa uma invocação de método do painel de solução.
Os componentes na placa de pão são:
- LED vermelho
- Resistor 220-Ohm (vermelho, vermelho, marrom)
- Sensor BME280
O diagrama a seguir mostra como conectar seu hardware:
Configuração de hardware do
A tabela a seguir resume as conexões do Raspberry Pi com os componentes na placa:
Raspberry Pi | Breadboard | Cor |
---|---|---|
GND (Pino 14) | PIN do LED -ve (18A) | Roxo |
GPCLK0 (Pino 7) | Resistor (25A) | Laranja |
SPI_CE0 (Pino 24) | CS (39A) | Azul |
SPI_SCLK (Pino 23) | SCK (36A) | Amarelo |
SPI_MISO (Pino 21) | SDO (37A) | Branco |
SPI_MOSI (Pino 19) | SDI (38A) | Verde |
GND (Pino 6) | GND (35A) | Preto |
3.3 V (Pino 1) | 3Vo (34A) | Vermelho |
Para concluir a configuração de hardware, você precisa:
- Conecte o Raspberry Pi à fonte de alimentação incluída no kit.
- Conecte o Raspberry Pi à sua rede usando o cabo Ethernet incluído em seu kit. Como alternativa, você pode configurar de conectividade sem fio para o Raspberry Pi.
Agora você concluiu a configuração de hardware do Raspberry Pi.
Entrar e acessar o terminal
Você tem duas opções para acessar um ambiente de terminal no Raspberry Pi:
Se você tiver um teclado e monitor conectado ao Raspberry Pi, poderá usar a GUI do Raspbian para acessar uma janela do terminal.
Acesse a linha de comando no Raspberry Pi usando o SSH do computador da área de trabalho.
Usar uma janela de terminal na GUI
As credenciais padrão para Raspbian são nome de usuário pi e senha raspberry. Na barra de tarefas na GUI, você pode iniciar o utilitário Terminal usando o ícone que se parece com um monitor.
Entrar com o SSH
Você pode usar o SSH para acesso de linha de comando ao Raspberry Pi. O artigo SSH (Secure Shell) descreve como configurar o SSH no Raspberry Pi e como se conectar de Windows ou Linux & Mac OS.
Entre com o nome de usuário pi e senha raspberry.
Opcional: compartilhar uma pasta no Raspberry Pi
Opcionalmente, talvez você queira compartilhar uma pasta no Raspberry Pi com seu ambiente de área de trabalho. Compartilhar uma pasta permite que você use seu editor de texto de área de trabalho preferencial (como do Visual Studio Code ou de Texto Sublime) para editar arquivos no Raspberry Pi em vez de usar nano
ou vi
.
Para compartilhar uma pasta com o Windows, configure um servidor Samba no Raspberry Pi. Como alternativa, use o servidor SFTP interno com um cliente SFTP em sua área de trabalho.
Habilitar SPI
Antes de executar o aplicativo de exemplo, você deve habilitar a Interface Periférica Serial (SPI) no Raspberry Pi. O Raspberry Pi se comunica com o dispositivo de sensor BME280 pelo barramento SPI. Use o seguinte comando para editar o arquivo de configuração:
sudo nano /boot/config.txt
Localize a linha:
#dtparam=spi=on
Para descomentar a linha, exclua o
#
no início.Salve suas alterações (Ctrl-O, Enter) e saia do editor (Ctrl-X).
Para habilitar o SPI, reinicialize o Raspberry Pi. A reinicialização desconecta o terminal, você precisa entrar novamente quando o Raspberry Pi for reiniciado:
sudo reboot
Baixar e configurar o exemplo
Agora você pode baixar e configurar o aplicativo cliente de monitoramento remoto no Raspberry Pi.
Clonar os repositórios
Se você ainda não fez isso, clone os repositórios necessários executando os seguintes comandos em seu Pi:
cd ~
git clone --recursive https://github.com/Azure-Samples/iot-remote-monitoring-c-raspberrypi-getstartedkit.git
Atualizar a cadeia de conexão do dispositivo
Abra o arquivo de configuração de exemplo no editor do nano usando o seguinte comando:
nano ~/iot-remote-monitoring-c-raspberrypi-getstartedkit/advanced/config/deviceinfo
Substitua os valores de espaços reservados pelas informações da ID do dispositivo e do Hub IoT que você criou e salvou no início deste tutorial.
Quando terminar, o conteúdo do arquivo deviceinfo deverá ser semelhante ao exemplo a seguir:
yourdeviceid
HostName=youriothubname.azure-devices.net;DeviceId=yourdeviceid;SharedAccessKey=yourdevicekey
Salve suas alterações (Ctrl-O, Enter) e saia do editor (Ctrl-X).
Compilar o exemplo
Se você ainda não fez isso, instale os pacotes de pré-requisito para o SDK do Dispositivo IoT do Microsoft Azure para C executando os seguintes comandos em um terminal no Raspberry Pi:
sudo apt-get update
sudo apt-get install g++ make cmake git libcurl4-openssl-dev libssl-dev uuid-dev
Agora você pode criar a solução de exemplo no Raspberry Pi:
chmod +x ~/iot-remote-monitoring-c-raspberrypi-getstartedkit/advanced/1.0/build.sh
~/iot-remote-monitoring-c-raspberrypi-getstartedkit/advanced/1.0/build.sh
Agora você pode executar o programa de exemplo no Raspberry Pi. Introduza o comando:
sudo ~/cmake/remote_monitoring/remote_monitoring
A saída de exemplo a seguir é um exemplo da saída que você vê no prompt de comando no Raspberry Pi:
saída
Pressione Ctrl-C para sair do programa a qualquer momento.
Exibir a telemetria
O Raspberry Pi agora está enviando telemetria para a solução de monitoramento remoto. Você pode exibir a telemetria no painel da solução. Você também pode enviar mensagens para o Raspberry Pi no painel da solução.
- Navegue até o painel da solução.
- Selecione seu dispositivo no menu suspenso Dispositivo para Visualizar.
- A telemetria do Raspberry Pi é exibida no painel.
Iniciar a atualização de firmware
O processo de atualização de firmware baixa e instala uma versão atualizada do aplicativo cliente do dispositivo no Raspberry Pi. Para obter mais informações sobre o processo de atualização de firmware, consulte a descrição do padrão de atualização de firmware no Visão geral do gerenciamento de dispositivos com o Hub IoT.
Você inicia o processo de atualização de firmware invocando um método no dispositivo. Esse método é assíncrono e retorna assim que o processo de atualização começa. O dispositivo usa propriedades relatadas para notificar a solução sobre o progresso da atualização.
Você invoca métodos no Raspberry Pi no painel da solução. Quando o Raspberry Pi se conecta pela primeira vez à solução de monitoramento remoto, ele envia informações sobre os métodos aos quais ele dá suporte.
No painel da solução, clique em Dispositivos para visitar a página Dispositivos. Selecione o Raspberry Pi na lista de dispositivos . Em seguida, escolha Métodos:
Na página Método de Invocação, escolha InitiateFirmwareUpdate na lista suspensa de método .
No campo FWPackageURI, insira https://github.com/Azure-Samples/iot-remote-monitoring-c-raspberrypi-getstartedkit/raw/master/advanced/2.0/package/remote_monitoring.zip. Este arquivo de armazenamento contém a implementação da versão 2.0 do firmware.
Escolha InvokeMethod. O aplicativo no Raspberry Pi envia uma confirmação de volta para o painel da solução. Em seguida, ele inicia o processo de atualização de firmware baixando a nova versão do firmware:
Observe o processo de atualização de firmware
Você pode observar o processo de atualização de firmware como ele é executado no dispositivo e exibindo as propriedades relatadas no painel da solução:
Você pode exibir o progresso no processo de atualização no Raspberry Pi:
Observação
O aplicativo de monitoramento remoto é reiniciado silenciosamente quando a atualização é concluída. Use o comando
ps -ef
para verificar se ele está em execução. Se você quiser encerrar o processo, use o comandokill
com a ID do processo.Você pode exibir o status da atualização de firmware, conforme relatado pelo dispositivo, no portal da solução. A captura de tela a seguir mostra o status e a duração de cada estágio do processo de atualização e a nova versão do firmware:
Se você navegar de volta para o painel, poderá verificar se o dispositivo ainda está enviando telemetria após a atualização de firmware.
Aviso
Se você deixar a solução de monitoramento remoto em execução em sua conta do Azure, será cobrado pelo tempo em que ela for executada. Para obter mais informações sobre como reduzir o consumo enquanto a solução de monitoramento remoto é executada, consulte Configurar soluções pré-configuradas do Azure IoT Suite para fins de demonstração. Exclua a solução pré-configurada de sua conta do Azure quando terminar de usá-la.
Próximas etapas
Visite o do Centro de Desenvolvimento do IoT do do Azure para obter mais exemplos e documentação sobre a IoT do Azure.