You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/pt/2-farm/lessons/1-predict-plant-growth/single-board-computer-temp-...

3.7 KiB

Publicar temperatura - Hardware IoT Virtual e Raspberry Pi

Nesta parte da lição, irá publicar os valores de temperatura detetados pelo Raspberry Pi ou Dispositivo IoT Virtual via MQTT, para que possam ser utilizados posteriormente no cálculo do GDD.

Publicar a temperatura

Depois de ler a temperatura, pode publicá-la via MQTT para algum código 'servidor' que irá ler os valores e armazená-los, prontos para serem usados no cálculo do GDD.

Tarefa - publicar a temperatura

Programe o dispositivo para publicar os dados de temperatura.

  1. Abra o projeto da aplicação temperature-sensor caso ainda não esteja aberto.

  2. Repita os passos que realizou na lição 4 para se conectar ao MQTT e enviar telemetria. Irá utilizar o mesmo broker público Mosquitto.

    Os passos para isso são:

    • Adicionar o pacote pip do MQTT
    • Adicionar o código para se conectar ao broker MQTT
    • Adicionar o código para publicar telemetria

    ⚠️ Consulte as instruções para se conectar ao MQTT e as instruções para enviar telemetria da lição 4, se necessário.

  3. Certifique-se de que o client_name reflete o nome deste projeto:

    client_name = id + 'temperature_sensor_client'
    
  4. Para a telemetria, em vez de enviar um valor de luz, envie o valor de temperatura lido do sensor DHT numa propriedade do documento JSON chamada temperature:

    _, temp = sensor.read()
    telemetry = json.dumps({'temperature' : temp})
    
  5. O valor da temperatura não precisa de ser lido com muita frequência - não irá mudar muito num curto espaço de tempo, por isso defina o time.sleep para 10 minutos:

    time.sleep(10 * 60);
    

    💁 A função sleep recebe o tempo em segundos, por isso, para facilitar a leitura, o valor é passado como resultado de um cálculo. 60s num minuto, então 10 x (60s num minuto) dá um atraso de 10 minutos.

  6. Execute o código da mesma forma que executou o código da parte anterior da tarefa. Se estiver a usar um dispositivo IoT virtual, certifique-se de que a aplicação CounterFit está a funcionar e que os sensores de humidade e temperatura foram criados nos pinos corretos.

    pi@raspberrypi:~/temperature-sensor $ python3 app.py
    MQTT connected!
    Sending telemetry  {"temperature": 25}
    Sending telemetry  {"temperature": 25}
    

💁 Pode encontrar este código na pasta code-publish-temperature/virtual-device ou na pasta code-publish-temperature/pi.

😀 Conseguiu publicar com sucesso a temperatura como telemetria a partir do seu dispositivo.

Aviso Legal:
Este documento foi traduzido utilizando o serviço de tradução por IA Co-op Translator. Embora nos esforcemos pela precisão, esteja ciente de que traduções automáticas podem conter erros ou imprecisões. O documento original na sua língua nativa deve ser considerado a fonte autoritária. Para informações críticas, recomenda-se uma tradução profissional realizada por humanos. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações incorretas decorrentes do uso desta tradução.