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

3.8 KiB

Publikuokite temperatūrą - Virtuali IoT įranga ir Raspberry Pi

Šioje pamokos dalyje publikuosite temperatūros reikšmes, kurias aptinka Raspberry Pi arba virtualus IoT įrenginys, naudodami MQTT, kad vėliau jos galėtų būti naudojamos GDD skaičiavimui.

Publikuokite temperatūrą

Kai temperatūra yra nuskaityta, ją galima publikuoti per MQTT į tam tikrą „serverio“ kodą, kuris nuskaito reikšmes ir saugo jas, kad vėliau būtų galima naudoti GDD skaičiavimui.

Užduotis - publikuokite temperatūrą

Užprogramuokite įrenginį publikuoti temperatūros duomenis.

  1. Atidarykite temperature-sensor programėlės projektą, jei jis dar neatidarytas.

  2. Pakartokite veiksmus, kuriuos atlikote 4-oje pamokoje, kad prisijungtumėte prie MQTT ir siųstumėte telemetriją. Naudosite tą patį viešąjį Mosquitto brokerį.

    Veiksmai yra šie:

    • Pridėkite MQTT pip paketą
    • Pridėkite kodą, kad prisijungtumėte prie MQTT brokerio
    • Pridėkite kodą, kad publikuotumėte telemetriją

    ⚠️ Žr. instrukcijas, kaip prisijungti prie MQTT ir instrukcijas, kaip siųsti telemetriją iš 4-os pamokos, jei reikia.

  3. Įsitikinkite, kad client_name atspindi šio projekto pavadinimą:

    client_name = id + 'temperature_sensor_client'
    
  4. Telemetrijai, vietoj šviesos reikšmės siųskite temperatūros reikšmę, nuskaitytą iš DHT jutiklio, JSON dokumento savybėje, pavadintoje temperature:

    _, temp = sensor.read()
    telemetry = json.dumps({'temperature' : temp})
    
  5. Temperatūros reikšmės nereikia skaityti labai dažnai ji per trumpą laiką daug nesikeis, todėl nustatykite time.sleep į 10 minučių:

    time.sleep(10 * 60);
    

    💁 Funkcija sleep priima laiką sekundėmis, todėl, kad būtų lengviau suprasti, reikšmė perduodama kaip skaičiavimo rezultatas. 60 s per minutę, taigi 10 x (60 s per minutę) suteikia 10 minučių uždelsimą.

  6. Paleiskite kodą taip pat, kaip paleidote kodą iš ankstesnės užduoties dalies. Jei naudojate virtualų IoT įrenginį, įsitikinkite, kad CounterFit programėlė veikia ir drėgmės bei temperatūros jutikliai buvo sukurti tinkamuose kaiščiuose.

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

💁 Šį kodą galite rasti code-publish-temperature/virtual-device aplanke arba code-publish-temperature/pi aplanke.

😀 Jūs sėkmingai publikavote temperatūrą kaip telemetriją iš savo įrenginio.


Atsakomybės apribojimas:
Šis dokumentas buvo išverstas naudojant AI vertimo paslaugą Co-op Translator. Nors siekiame tikslumo, prašome atkreipti dėmesį, kad automatiniai vertimai gali turėti klaidų ar netikslumų. Originalus dokumentas jo gimtąja kalba turėtų būti laikomas autoritetingu šaltiniu. Kritinei informacijai rekomenduojama naudoti profesionalų žmogaus vertimą. Mes neprisiimame atsakomybės už nesusipratimus ar klaidingus interpretavimus, atsiradusius dėl šio vertimo naudojimo.