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/no/2-farm/lessons/1-predict-plant-growth/single-board-computer-temp-...

3.6 KiB

Publiser temperatur - Virtuell IoT-maskinvare og Raspberry Pi

I denne delen av leksjonen skal du publisere temperaturverdiene som oppdages av Raspberry Pi eller Virtuell IoT-enhet over MQTT, slik at de senere kan brukes til å beregne GDD.

Publiser temperaturen

Når temperaturen er lest, kan den publiseres over MQTT til noe 'server'-kode som vil lese verdiene og lagre dem klare til bruk i en GDD-beregning.

Oppgave - publiser temperaturen

Programmer enheten til å publisere temperaturdata.

  1. Åpne prosjektet for appen temperature-sensor hvis det ikke allerede er åpent.

  2. Gjenta trinnene du gjorde i leksjon 4 for å koble til MQTT og sende telemetri. Du vil bruke den samme offentlige Mosquitto-brokeren.

    Trinnene for dette er:

    • Legg til MQTT pip-pakken
    • Legg til koden for å koble til MQTT-brokeren
    • Legg til koden for å publisere telemetri

    ⚠️ Se instruksjonene for å koble til MQTT og instruksjonene for å sende telemetri fra leksjon 4 hvis nødvendig.

  3. Sørg for at client_name gjenspeiler navnet på dette prosjektet:

    client_name = id + 'temperature_sensor_client'
    
  4. For telemetrien, i stedet for å sende en lysverdi, send temperaturverdien som er lest fra DHT-sensoren i en egenskap i JSON-dokumentet kalt temperature:

    _, temp = sensor.read()
    telemetry = json.dumps({'temperature' : temp})
    
  5. Temperaturverdien trenger ikke leses veldig ofte - den vil ikke endre seg mye på kort tid, så sett time.sleep til 10 minutter:

    time.sleep(10 * 60);
    

    💁 Funksjonen sleep tar tiden i sekunder, så for å gjøre det lettere å lese, sendes verdien som resultatet av en beregning. 60 sekunder i et minutt, så 10 x (60 sekunder i et minutt) gir en forsinkelse på 10 minutter.

  6. Kjør koden på samme måte som du kjørte koden fra forrige del av oppgaven. Hvis du bruker en virtuell IoT-enhet, må du sørge for at CounterFit-appen kjører og at fuktighets- og temperatursensorene er opprettet på de riktige pinnene.

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

💁 Du finner denne koden i mappen code-publish-temperature/virtual-device eller mappen code-publish-temperature/pi.

😀 Du har nå publisert temperaturen som telemetri fra enheten din.


Ansvarsfraskrivelse:
Dette dokumentet er oversatt ved hjelp av AI-oversettelsestjenesten Co-op Translator. Selv om vi streber etter nøyaktighet, vær oppmerksom på at automatiserte oversettelser kan inneholde feil eller unøyaktigheter. Det originale dokumentet på sitt opprinnelige språk bør anses som den autoritative kilden. For kritisk informasjon anbefales profesjonell menneskelig oversettelse. Vi er ikke ansvarlige for misforståelser eller feiltolkninger som oppstår ved bruk av denne oversettelsen.