Looge Sense HATi abil Raspberry Pi temperatuurimonitor ja kuvage selle LED-maatriksil regulaarseid näitu.

Raspberry Pi ühe pardaarvuti abil saate ümbritseva õhu temperatuuri jälgida mitmel viisil, võib-olla osana ilmajaama seadistamisest. Kuigi võite kasutada Raspberry Pi GPIO tihvtidega ühendatud välist andurit, selgitame siin, kuidas jälgida temperatuuri Sense HAT-iga varustatud Raspberry Pi abil.

Mis on Sense HAT?

Pildi krediit: Vaarika Pi

Ametlik Raspberry Pi MÜTS (Riistvara külge kinnitatud) lisandmoodul, mille on välja töötanud ja tootnud ettevõte Raspberry Pi, Sense HAT loodi algselt kasutamiseks astronaudidele rahvusvahelise kosmosejaama pardal. Alates 2015. aastast on kaks Sense HAT-iga varustatud Raspberry Pi arvutit kasutatud teaduslikes katsetes, mille on kavandanud käimasolevasse projekti sisenenud kooliõpilased. Astro Pi väljakutse Need kaks seadet on vahepeal asendatud täiustatud versioonidega, mis põhinevad Raspberry Pi 4-l ja on varustatud kvaliteetse kaameraga.

Pildi krediit: Vaarika Pi
instagram viewer

Kuigi sellel puudub kosmoses kasutamiseks mõeldud spetsiaalne hõbedane ümbris, on tavalisel Sense HAT-plaadil täpselt sama funktsionaalsus. Ühildub mis tahes Raspberry Pi mudel 40-kontaktilise GPIO-päisega on sellel rida sisseehitatud andureid, mis võimaldavad jälgida ümbritsevat keskkonda ning tuvastada ka enda orientatsiooni ja liikumist. Lisaks on sellel 8x8 RGB LED-maatriks teksti, andmete ja piltide kuvamiseks. Samuti on mini viiesuunaline juhtkang.

Sense HAT sensoorsete funktsioonide täielik valik on järgmine:

  • Niiskus: STMicro HTS221 andur suhtelise õhuniiskuse vahemikuga 0 kuni 100%, pluss temperatuuriandur vahemikus 32°F kuni 149°F (0°C kuni 65°C ± 2°C).
  • Õhurõhk: STMicro LPS25HB andur vahemikus 260 kuni 1260 hPa, pluss temperatuuriandur vahemikus 59°F kuni 104°F (15°C kuni 40°C ±0,5°C).
  • Temperatuur: Seda saab lugeda niiskus- või rõhuandurilt või mõõta mõlema näidu keskmisena.
  • Güroskoop: STMicro LSM9DS1 IMU suudab mõõta Sense HATi pöörlemist Maa pinna suhtes (ja selle pöörlemise kiirust).
  • Kiirendusmõõtur: Teine IMU funktsioon, see võib mõõta kiirendusjõudu mitmes suunas.
  • Magnetomeeter: Tundes Maa magnetvälja, saab IMU määrata magnetilise põhja suuna ja seega anda kompassi näidu.

Nüüd, kui olete saanud ülevaate sellest, mida see mitmeotstarbeline Raspberry Pi HAT suudab teha, on aeg projektiga alustada.

1. samm: paigaldage Sense HAT

Sense HATi ühendamiseks veenduge esmalt, et teie Raspberry Pi on välja lülitatud ja vooluvõrgust lahti ühendatud. Seejärel lükake Sense HAT (koos kaasasoleva musta päisepikendusega) ettevaatlikult Raspberry Pi 40-kontaktilise GPIO päise külge, nii et Sense HAT plaat asetseks Raspberry Pi plaadi kohal. Veenduge, et kõik tihvtid asetseksid õigesti ja mõlemad read oleksid ühendatud. Selle kinnitamiseks võite kasutada ka sissekeeratavaid aluseid.

Võite kasutada mis tahes standardset Raspberry Pi mudelit, millel on 40-pin GPIO päis. Üks neist Raspberry Pi 400 peamised piirangudGPIO päis asub aga integreeritud klaviatuuri tagaküljel. See tähendab, et Sense HAT on tahapoole, nii et võiksite selle ühendamiseks kasutada GPIO pikenduskaablit.

2. samm: seadistage Raspberry Pi

Nagu iga teise projekti puhul, peaksite ühendama USB-klaviatuuri ja hiire ning seejärel ühendage oma Raspberry Pi monitori või teleriga. Samuti peaks teil olema sisestatud microSD-kaart, millel on standardne Raspberry Pi OS – kui te pole seda veel teinud, vaadake kuidas installida operatsioonisüsteem Raspberry Pi-le. Seejärel olete valmis toite sisse lülitama.

Teise võimalusena võite kasutada oma Raspberry Pi koos Sense HAT-iga peata režiimis, ilma et monitor oleks ühendatud ja looge Raspberry Pi-ga kaugühendus SSH abil teisest arvutist või seadmest. Kui seda teete, ei saa te Thonny Pythoni IDE-d kasutada, osta saate siiski nano-tekstiredaktoriga programme redigeerida ja neid käsurealt käivitada.

Sense HAT püsivara peaks olema vaikimisi installitud. Topeltkontrollimiseks avage terminali aken ja sisestage:

sudo apt install sense-hat

Seejärel, kui pakett on äsja installitud, taaskäivitage Raspberry Pi:

sudo reboot

3. samm: alustage Pythonis programmeerimist

Kuigi saate Raspberry Pi Sense HAT-i kasutada koos Scratch-plokipõhise programmeerimiskeelega, kasutame Pythonit selle andurite näitude lugemiseks ja kuvamiseks.

Thonny IDE (integreeritud arenduskeskkond) on hea viis Pythoni programmeerimiseks Raspberry Pi-s, kuna sellel on palju funktsioone, sealhulgas kasulikke silumisfunktsioone. Raspberry Pi OS-i töölaua GUI-s minge aadressile Menüü (üleval vasakul vaarika ikoon) > Programmeerimine > Thonny IDE selle käivitamiseks.

4. samm: mõõtke temperatuuri näit

Sisestage Thonny IDE peaaknas järgmised koodiread:


from sense_hat import SenseHat

sense = SenseHat()
sense.clear()

temp = sense.get_temperature()
print(temp)

Esimene rida impordib SenseHat klassist alates tunde_kübar Pythoni teek (mis on Raspberry Pi OS-i eelinstallitud). Seejärel määratakse see meel muutuv. Kolmas rida tühjendab Sense HATi LED-maatriksi.

Seejärel võtame temperatuuri näidu ja prindime selle Thonny IDE Shelli alale. See on Celsiuse kraadides, nii et võiksite selle esmalt Fahrenheiti teisendada:

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

Temperatuurianduri näidus on pärast koma mitu numbrit. Nii et me kasutame ümmargune funktsioon selle ümardamiseks ühe kümnendkohani:

temp = round(temp, 1)

The sense.get_temperature() funktsioon loeb niiskusandurisse ehitatud temperatuuriandurit. Teise võimalusena võite võtta temperatuurinäidu rõhuandurilt sense.get_temperature_from_pressure() või isegi võtta mõlemad näidud ja arvutada keskmine keskmine (need liites ja kahega jagades).

5. samm: näidake Sense HATil temperatuuri

Ühe temperatuurinäidu trükkimine Python Shelli on pisut nüri, seega võtame selle asemel regulaarselt uue näidu ja näitame seda Sense HATi RGB LED-maatriksil. Keriva tekstsõnumi kuvamiseks kasutame show_message funktsiooni. Kasutame ka a samas: tõsi silmus, et jätkata iga 10 sekundi järel uue näidu võtmist – selleks kasutame magama funktsioonist aega raamatukogu.

Siin on täielik programm:

from sense_hat import SenseHat
from time import sleep

sense = SenseHat()
sense.clear()

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

Käivitage see kood ja näete LED-maatriksil iga uut temperatuurinäitu. Proovige Sense HAT-i peale puhuda, et näha, kas temperatuur muutub.

Temperatuurinäitu võib mõjutada Raspberry Pi protsessorilt vahetult allpool kantud soojus, seega võib täpsema arvu saamiseks vaja minna reguleerimist. Teine lahendus on virnastamispäise kasutamine, et tõsta Sense HAT kõrgemale Raspberry Pi-st.

Kasutage temperatuuri jälgimiseks Raspberry Pi-d

Kuigi selle projekti jaoks võite kasutada eraldiseisvat temperatuuriandurit, muudab Sense HAT temperatuuri jälgimise lihtsaks Vaarika Pi. Saate seda kasutada ka paljude muude andurite näitude (nt õhurõhu ja suhtelise õhuniiskuse) mõõtmiseks ja nende kuvamiseks LED-il. maatriks.