4.1 KiB
Hőmérséklet közzététele - Virtuális IoT Hardver és Raspberry Pi
Ebben a leckében a Raspberry Pi vagy Virtuális IoT Eszköz által érzékelt hőmérsékleti értékeket fogod közzétenni MQTT-n keresztül, hogy később felhasználhatók legyenek a GDD kiszámításához.
Hőmérséklet közzététele
Miután a hőmérsékletet kiolvastad, közzéteheted MQTT-n keresztül egy 'szerver' kód számára, amely elolvassa az értékeket és eltárolja őket, hogy később felhasználhatók legyenek a GDD számításához.
Feladat - hőmérséklet közzététele
Programozd az eszközt, hogy közzétegye a hőmérsékleti adatokat.
-
Nyisd meg a
temperature-sensor
alkalmazás projektet, ha még nincs megnyitva. -
Ismételd meg azokat a lépéseket, amelyeket a 4. leckében végeztél az MQTT-hez való csatlakozáshoz és a telemetria küldéséhez. Ugyanazt a nyilvános Mosquitto brókert fogod használni.
A lépések a következők:
- Add hozzá az MQTT pip csomagot
- Add hozzá a kódot az MQTT brókerhez való csatlakozáshoz
- Add hozzá a kódot a telemetria közzétételéhez
⚠️ Tekintsd meg az MQTT-hez való csatlakozásra vonatkozó utasításokat és a telemetria küldésére vonatkozó utasításokat a 4. leckéből, ha szükséges.
-
Győződj meg róla, hogy a
client_name
tükrözi ennek a projektnek a nevét:client_name = id + 'temperature_sensor_client'
-
A telemetria esetében a fényérték helyett a DHT szenzorból kiolvasott hőmérsékleti értéket küldd el egy
temperature
nevű tulajdonságban a JSON dokumentumban:_, temp = sensor.read() telemetry = json.dumps({'temperature' : temp})
-
A hőmérsékleti értéket nem szükséges gyakran kiolvasni - rövid idő alatt nem változik jelentősen, ezért állítsd a
time.sleep
értékét 10 percre:time.sleep(10 * 60);
💁 A
sleep
függvény másodpercekben veszi az időt, ezért az érték könnyebb olvashatósága érdekében egy számítás eredményeként van megadva. 60 másodperc egy percben, tehát 10 x (60 másodperc egy percben) 10 perces késleltetést ad. -
Futtasd a kódot ugyanúgy, ahogy a feladat előző részében futtattad. Ha virtuális IoT eszközt használsz, győződj meg róla, hogy a CounterFit alkalmazás fut, és a páratartalom- és hőmérsékletérzékelők a megfelelő lábakon lettek létrehozva.
pi@raspberrypi:~/temperature-sensor $ python3 app.py MQTT connected! Sending telemetry {"temperature": 25} Sending telemetry {"temperature": 25}
💁 Ezt a kódot megtalálod a code-publish-temperature/virtual-device mappában vagy a code-publish-temperature/pi mappában.
😀 Sikeresen közzétetted a hőmérsékletet telemetria formájában az eszközödről.
Felelősség kizárása:
Ez a dokumentum az AI fordítási szolgáltatás Co-op Translator segítségével lett lefordítva. Bár törekszünk a pontosságra, kérjük, vegye figyelembe, hogy az automatikus fordítások hibákat vagy pontatlanságokat tartalmazhatnak. Az eredeti dokumentum az eredeti nyelvén tekintendő hiteles forrásnak. Kritikus információk esetén javasolt professzionális emberi fordítást igénybe venni. Nem vállalunk felelősséget semmilyen félreértésért vagy téves értelmezésért, amely a fordítás használatából eredhet.