Hogyan használjunk Raspberry Pi-t a hőmérséklet figyelésére Sense HAT segítségével

Többféle módon is figyelemmel kísérheti a környezeti hőmérsékletet egy Raspberry Pi egyfedélzeti számítógép segítségével, esetleg egy időjárási állomás beállításának részeként. Bár használhat egy külső érzékelőt, amely a Raspberry Pi GPIO érintkezőihez van csatlakoztatva, itt elmagyarázzuk, hogyan figyelheti a hőmérsékletet a Sense HAT-tel felszerelt Raspberry Pi-vel.

Mi a Sense HAT?

Kép jóváírása: Raspberry Pi

A Raspberry Pi cég által tervezett és gyártott hivatalos Raspberry Pi HAT (Hardware Attached on Top) kiegészítő tábla, a Sense HAT eredetileg a Nemzetközi Űrállomás űrhajósai számára készült. 2015 óta két Sense HAT-tel felszerelt Raspberry Pi számítógépet használnak tudományos kísérletekben, amelyeket a folyamatban lévő iskolások terveztek. Astro Pi kihívás Ezt a két egységet azóta a Raspberry Pi 4-en alapuló továbbfejlesztett verziók váltották fel, és kiváló minőségű kamerával vannak felszerelve.

Kép jóváírása: Raspberry Pi

Noha hiányzik belőle a speciális, űrben való használatra tervezett ezüst tok, a szabványos Sense HAT kártya pontosan ugyanazokkal a funkciókkal rendelkezik. Kompatibilis bármely 40 tűs GPIO fejléccel rendelkező Raspberry Pi modellel, és számos beépített érzékelőt tartalmaz, amelyek lehetővé teszik a környező környezet figyelését, valamint saját tájékozódási és mozgási érzékelését. Ezenkívül 8 × 8-as RGB LED-mátrixszal rendelkezik a szöveg, az adatok és a képek megjelenítéséhez. Van egy mini ötirányú joystick is.

A Sense HAT szenzoros funkciók teljes skálája a következő:

  • Páratartalom: STMicro HTS221 érzékelő 0-100%-os relatív páratartalom-tartományban, plusz hőmérséklet-érzékelő 32°F és 149°F (0°C és 65°C ± 2°C) között.
  • Légköri nyomás: STMicro LPS25HB érzékelő 260-1260 hPa tartományban, plusz hőmérséklet-érzékelő 59°F és 104°F (15°C és 40°C ±0,5°C) között.
  • Hőmérséklet: Ez leolvasható a páratartalom- vagy nyomásérzékelőről, vagy mérhető mindkét leolvasás átlagával.
  • Giroszkóp: Az STMicro LSM9DS1 IMU képes mérni a Sense HAT forgását a Föld felszínéhez képest (és azt, hogy milyen gyorsan forog).
  • Gyorsulásmérő: Az IMU másik funkciója, amely több irányban mérheti a gyorsulási erőt.
  • Magnetométer: A Föld mágneses terének érzékelésével az IMU meg tudja határozni a mágneses észak irányát, és így iránytűt ad.
  PSA: Vigyázz erre az új Amazon e-mail adathalász csalásra

Most, hogy megtudta, mire képes ez a többcélú Raspberry Pi HAT, ideje elkezdeni a projektet.

1. lépés: Szerelje fel a Sense HAT-et

A Sense HAT csatlakoztatásához először győződjön meg arról, hogy a Raspberry Pi ki van kapcsolva, és le van választva az áramellátásról. Ezután óvatosan nyomja rá a Sense HAT-ot (a mellékelt fekete fejléc-hosszabbítóval együtt) a Raspberry Pi 40 tűs GPIO-fejére úgy, hogy a Sense HAT tábla a Raspberry Pi kártya fölé kerüljön. Győződjön meg arról, hogy az összes érintkező megfelelően egy vonalban van, és mindkét sor csatlakoztatva van. Használhat csavaros támasztékokat is a rögzítés érdekében.

Bármilyen szabványos Raspberry Pi modellt használhat, amely 40 tűs GPIO-fejléccel rendelkezik. A Raspberry Pi 400 egyik legfontosabb korlátja azonban az, hogy a GPIO fejléce az integrált billentyűzet hátulján található. Ez azt jelenti, hogy a Sense HAT hátrafelé néz, ezért érdemes lehet GPIO hosszabbító kábelt használni a csatlakoztatáshoz.

2. lépés: Állítsa be a Raspberry Pi-t

Mint minden más projekthez, csatlakoztasson USB-billentyűzetet és egeret, majd csatlakoztassa a Raspberry Pi-t egy monitorhoz vagy TV-hez. Ezenkívül be kell helyeznie egy microSD-kártyát, amelyen a szabványos Raspberry Pi OS található – ha még nem tette meg, nézze meg, hogyan telepíthet operációs rendszert egy Raspberry Pi-re. Ezután készen áll az áramellátás bekapcsolására.

  Fizetés törlése a PayPal-on

Alternatív megoldásként használhatja Raspberry Pi-t Sense HAT-tal fej nélküli módban, monitor csatlakoztatása nélkül, és távolról csatlakozhat a Raspberry Pi-hez SSH használatával egy másik számítógépről vagy eszközről. Ha ezt teszi, akkor nem fogja tudni használni a Thonny Python IDE-t, a buy továbbra is szerkesztheti a programokat a nano szövegszerkesztővel, és futtathatja azokat a parancssorból.

A Sense HAT firmware-t alapértelmezés szerint telepíteni kell. Az ellenőrzéshez nyisson meg egy terminálablakot, és írja be:

 sudo apt install sense-hat

Ezután, ha a csomag nemrég lett telepítve, indítsa újra a Raspberry Pi-t:

 sudo reboot

3. lépés: Kezdje el a programozást Pythonban

Míg a Raspberry Pi Sense HAT használható a Scratch blokk alapú programozási nyelvvel, mi a Pythont használjuk az érzékelők leolvasására és megjelenítésére.

A Thonny IDE (integrált fejlesztői környezet) jó módja a Python programozásnak Raspberry Pi-n, mivel számos funkcióval rendelkezik, beleértve a hasznos hibakereső funkciókat. A Raspberry Pi OS asztali grafikus felhasználói felületén válassza a Menü (bal felső málna ikon) > Programozás > Thonny IDE menüpontot az elindításához.

4. lépés: Mérje le a hőmérsékletet

A Thonny IDE főablakába írja be a következő kódsorokat:

 
from sense_hat import SenseHat

sense = SenseHat()
sense.clear()

temp = sense.get_temperature()
print(temp)

Az első sor a SenseHat osztályt importálja a sense_hat Python könyvtárból (amely előre telepítve van a Raspberry Pi OS-ben). Ez azután hozzá van rendelve az érzékelési változóhoz. A harmadik sor törli a Sense HAT LED-mátrixát.

  12 legjobb brit TV Kodi csatorna

Ezután leolvassuk a hőmérsékletet, és kinyomtatjuk a Thonny IDE Shell területére. Ez Celsius-fokban van megadva, ezért érdemes először Fahrenheitre konvertálni:

 temp = (sense.get_temperature() * 1.8 + 32) 

A hőmérséklet-érzékelő leolvasása több számjegyből áll a tizedesvessző után. Tehát a kerek függvényt használjuk, hogy egy tizedesjegyre kerekítsük:

 temp = round(temp, 1) 

A sense.get_temperature() függvény beolvassa a páratartalom-érzékelőbe épített hőmérséklet-érzékelőt. Alternatív megoldásként leolvashat egy hőmérsékletet a nyomásérzékelőről a sense.get_temperature_from_pressure() paraméterrel, vagy akár mindkét leolvasást, és kiszámíthatja az átlagos átlagot (összeadva és kettővel osztva).

5. lépés: Mutassa meg a hőmérsékletet a Sense HAT-en

Egyetlen hőmérsékleti érték kinyomtatása a Python Shellre kissé unalmas, ezért ehelyett rendszeresen vegyünk új mérést, és mutassuk meg a Sense HAT RGB LED mátrixán. A görgető szöveges üzenet megjelenítéséhez a show_message függvényt használjuk. A True Loop funkciót is használjuk, hogy 10 másodpercenként új mérést végezzünk – ehhez az időkönyvtár alvás funkcióját használjuk.

Íme a teljes program:

 from sense_hat import SenseHat
from time import sleep

sense = SenseHat()
sense.clear()

while True:
 temp = (sense.get_temperature() * 1.8 + 32)
 temp = round(temp, 1)
 message = "Temp: " + str(temp)
 sense.show_message(message)
 sleep (10)

Futtassa ezt a kódot, és látni fogja, hogy minden új hőmérsékleti érték gördül végig a LED-mátrixon. Próbálja meg fújni a Sense HAT-et, hogy lássa, változik-e a hőmérséklet.

A hőmérsékleti értékeket befolyásolhatja a közvetlenül alatta lévő Raspberry Pi CPU-járól átadott hő, így a pontosabb adat eléréséhez szükség lehet a beállításra. Egy másik megoldás, hogy egy halmozási fejléc segítségével magasabbra emeljük a Sense HAT-ot a Raspberry Pi fölé.

Használjon Raspberry Pi-t a hőmérséklet figyeléséhez

Míg ehhez a projekthez használhat különálló hőmérséklet-érzékelőt, a Sense HAT megkönnyíti a hőmérséklet figyelését a Raspberry Pi-vel. Használhatja számos egyéb érzékelő leolvasására is, például a légköri nyomásra és a relatív páratartalomra, és megjelenítheti azokat a LED-mátrixán.