Sadržaj:
- Pribor
- Korak 1: Raspberry Pi
- Korak 2: Senzori
- Korak 3: Postavljanje Raspberry Pi
- Korak 4: Početni državni račun
- Korak 5: DHT22 rješenje
- Korak 6: Rješenje DSB18B20
- Korak 7: Rješenje BME280
- Korak 8: Osjetite ŠEŠIR
- Korak 9: Prilagodite početnu nadzornu ploču stanja
Video: Kako izgraditi monitor temperature Raspberry Pi: 9 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:34
Temperatura i vlaga vitalni su podaci u današnjem industrijskom svijetu. Nadzor podataka o okolišu za poslužiteljske prostorije, komercijalne zamrzivače i proizvodne linije neophodan je kako bi stvari nesmetano funkcionirale. Postoji mnogo rješenja u rasponu od osnovnih do složenih i može se činiti neodoljivim o tome što vašem poslu treba i odakle započeti.
Proći ćemo kroz kako pratiti temperaturu pomoću Raspberry Pi -a i različitih temperaturnih senzora koje možete koristiti. Ovo je dobro mjesto za početak jer su ova rješenja jeftina, laka za napraviti i daju vam temelje za nadogradnju za drugi monitoring okoliša.
Pribor
- Raspberry Pi (3, 4 ili nula WH)
- Senzor temperature (DHT2, DSB18B20, BME280 ili Sense HAT)
- 6 "40-pinski IDE produžni kabel muški na ženski (Sense HAT rješenje)
- 10K otpornik, pločica, 40-pinska razvodna ploča + vrpčani kabel, žice (za rješenje DSB18B20)
Korak 1: Raspberry Pi
Raspberry Pi je jeftino jednopločno računalo koje će vam omogućiti povezivanje s temperaturnim senzorom i strujanje podataka u softver za vizualizaciju podataka. Raspberry Pi su započeli kao alat za učenje, a evoluirali su do alata za industrijsko radno mjesto. Jednostavnost korištenja i mogućnost kodiranja s Pythonom, najbrže rastućim programskim jezikom, učinili su ih rješenjem.
Željet ćete Raspberry Pi s ugrađenim WiFi -om, bilo koji model 3, 4 i nula W/WH. Između onih koje možete birati na temelju cijene i značajki. Zero W/WH je najjeftiniji, ali ako vam je potrebno više funkcija, možete birati između 3 i 4. Možete kupiti samo jedan Zero W/WH odjednom zbog ograničenja Raspberry Pi Foundation. Koji god Pi odaberete, svakako kupite punjač jer ćete tako napajati Pi i SD karticu s Raspbian -om kako bi instalacija operativnog sustava bila što lakša.
Postoje i druga jednokrilna računala koja također mogu raditi, ali to je za drugi put i drugi članak.
Korak 2: Senzori
Preporučujemo korištenje tri senzora jer su jeftini, lako se povezuju i daju točna očitanja; DSB18B20, DHT22 i Raspberry Pi Sense HAT.
DHT22 - Ovaj osjetnik temperature i vlažnosti ima temperaturnu točnost od +/- 0,5 C i raspon vlažnosti od 0 do 100 posto. Lako je spojiti na Raspberry Pi i ne zahtijevaju nikakve otpornike.
DSB18B20 - Ovaj temperaturni senzor ima digitalni izlaz, koji dobro radi s Raspberry Pi. Ima tri žice i zahtijeva vezu i otpornik za povezivanje.
BME280 - Ovaj senzor mjeri temperaturu, vlažnost i barometarski tlak. Može se koristiti u SPI i I2C.
Sense HAT - Ovo je dodatak na ploči za Raspberry Pi koji ima LED diode, senzore i maleni joystick. Povezuje se izravno s GPIO -om na Raspberry Pi -u, ali pomoću vrpčnog kabela dobivate točnija očitanja temperature.
Korak 3: Postavljanje Raspberry Pi
Ako je ovo prvi put da postavljate svoj Raspberry Pi, morat ćete instalirati Raspbian operacijski sustav i povezati svoj Pi na WiFi. To će zahtijevati monitor i tipkovnicu za povezivanje s Pi. Nakon što ga pokrenete i povežete na WiFI, vaš Pi je spreman za rad.
Korak 4: Početni državni račun
Morat ćete negdje poslati svoje podatke kako biste vodili povijesni dnevnik i pregledavali tok podataka u stvarnom vremenu, pa ćemo koristiti početno stanje. Idite na https://iot.app.initialstate.com i stvorite novi račun ili se prijavite na svoj postojeći račun.
Zatim moramo instalirati Python modul početnog stanja na vaš Pi. U naredbenom retku (ne zaboravite prvo unijeti SSH u svoj Pi), pokrenite sljedeću naredbu:
$ cd/home/pi/
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Nakon što unesete naredbu curl u naredbeni redak, na zaslonu ćete vidjeti nešto slično sljedećem izlazu:
pi@raspberrypi ~
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash Lozinka: Počinje ISStreamer Python Laka instalacija! Ovo može potrajati nekoliko minuta za instalaciju, uzmite kavu:) Ali ne zaboravite se vratiti, imat ću pitanja kasnije! Nađeno easy_install: setuptools 1.1.6 Pronađeno pip: pip 1.5.6 iz /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) glavna verzija pipa: 1 mala verzija pipa: 5 ISStreamer je pronađen, ažurira se … Zahtev je već ažuriran: ISStreamer u /Library/Python/2.7/site-packages Cleaning… Želite li automatski dobiti primjer skripte? [y/N] Gdje želite spremiti primjer? [zadano:./is_example.py] Molimo odaberite aplikaciju početnog stanja koju koristite: 1. app.initialstate.com 2. [NOVO!] iot.app.initialstate.com Unesite izbor 1 ili 2: Unesite iot.app.initialstate.com korisničko ime: Unesite lozinku iot.app.initialstate.com:
Kada se od vas zatraži da automatski nabavite primjer skripte, upišite y. Ovo će stvoriti testnu skriptu koju možemo pokrenuti kako bismo bili sigurni da možemo strujati podatke u početno stanje. Sljedeći upit će vas upitati gdje želite spremiti datoteku primjera. Možete unijeti prilagođeni lokalni put ili pritisnuti enter da biste prihvatili zadanu lokaciju. Na kraju će vas pitati koju aplikaciju Initial State koristite. Ako ste nedavno stvorili račun, odaberite opciju 2, unesite svoje korisničko ime i lozinku. Nakon toga instalacija će biti dovršena.
Pogledajmo primjer skripte koja je stvorena.
$ nano is_example.py
U retku 15 vidjet ćete redak koji počinje sa streamer = Streamer (bucket_…. Ovi retci stvaraju novu podatkovnu gomilu pod nazivom „Primjer Python Stream -a“i povezani su s vašim računom. To povezivanje događa se zbog access_key =”…“parametar na istom retku. Taj dugi niz slova i brojki ključ je za pristup vašem računu početnog stanja. Ako u svom web pregledniku otvorite račun početnog stanja, kliknite svoje korisničko ime u gornjem desnom kutu, a zatim idite na "moje postavke", taj isti pristupni ključ pronaći ćete ovdje u odjeljku "Pristupni ključevi za strujanje".
Svaki put kada stvorite podatkovni tok, taj pristupni ključ usmjerit će taj podatkovni tok na vaš račun (stoga nemojte ni s kim dijeliti svoj ključ).
Pokrenite testnu skriptu kako biste bili sigurni da možemo stvoriti tok podataka na vaš račun početnog stanja. Pokrenite sljedeće:
$ python je_example.py
Vratite se na početno stanje računa u svom web pregledniku. Nova podatkovna korpa pod nazivom „Primjer Python Stream -a“trebala se pojaviti s lijeve strane na polici vašeg dnevnika (možda ćete morati osvježiti stranicu). Kliknite na ovu kantu, a zatim kliknite na ikonu Valovi za pregled podataka o ispitivanju
Ako koristite Python 3, možete instalirati početni modul streamera koji možete instalirati pomoću sljedeće naredbe:
pip3 instalirajte ISStreamer
Sada smo spremni za postavljanje temperaturnog osjetnika s Pi -om za prenošenje temperature na nadzornu ploču.
Korak 5: DHT22 rješenje
DHT22 će imati tri pina - 5V, Gnd i podatke. Na DHT22 bi trebala biti oznaka pin -a za napajanje (npr. "+" Ili "5V"). Spojite ovo na pin 2 (gornji desni pin, 5V) na Pi. Gnd pin će imati oznaku '-' ili 'Gnd' ili nešto ekvivalentno. Spojite ga na pin 6 Gnd (dva pina ispod 5V pina) na Pi. Preostali pin na DHT22 je pin podataka i bit će označen kao 'out' ili 's' ili 'data'. Spojite ga na jedan od GPIO pinova na Pi, poput GPIO4 (pin 7). Kad se ovo poveže, uključite svoj Pi.
Instalirajte Adafruit DHT Python modul u naredbeni redak kako biste čitanje podataka senzora DHT22 učinili vrlo jednostavnim:
$ sudo pip instalirajte Adafruit_DHT
S instaliranim operativnim sustavom zajedno s dva Python modula za čitanje podataka senzora i slanje podataka u početno stanje, spremni smo za pisanje naše skripte Python. Sljedeća skripta će stvoriti/dodati u podatkovnu sekciju početnog stanja, pročitati podatke senzora DHT22 i poslati te podatke na nadzornu ploču u stvarnom vremenu. Sve što trebate učiniti je izmijeniti retke 6-11.
uvoz Adafruit_DHT
iz ISStreamer. Streamer import Vrijeme uvoza streamera# --------- Korisničke postavke --------- SENSOR_LOCATION_NAME = "Ured" BUCKET_NAME = ": djelomično_sunčno: Temperature u prostoriji" BUCKET_KEY = "rt0129" ACCESS_KEY = "OVDJE KLJUČITE SVOJ POČETNI DRŽAVNI PRISTUP" MINUTES_BETWEEN_READS = 10METRIC_UNITS = Netačno # --------------------------------- streamer = Niz (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY) dok je True: vlažnost, temp_c = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) ako je METRIC_UNITS: streamer.log (SENSOR_, Temp. "SOC"): temp_f = format (temp_c * 9.0 / 5.0 + 32.0, ".2f") streamer.log (SENSOR_LOCATION_NAME + "Temperatura (F)", temp_f) vlažnost = format (vlažnost, ".2f") streamer.log (SENSOR_LOCATION_NAME + "Vlažnost (%)", vlažnost) streamer.flush () time.sleep (60*MINUTES_BETWEEN_READS)
- Red 6 - Ova vrijednost treba biti jedinstvena za svaki čvor/osjetnik temperature. To može biti naziv sobe vašeg čvora senzora, fizička lokacija, jedinstveni identifikator ili bilo što drugo. Samo provjerite je li jedinstven za svaki čvor kako biste bili sigurni da podaci s ovog čvora idu u vlastiti tok podataka na vašoj nadzornoj ploči.
- Redak 7 - Ovo je naziv spremišta podataka. To se može promijeniti u bilo kojem trenutku u korisničkom sučelju početnog stanja.
- Red 8 - Ovo je vaš ključ kante. To mora biti isti ključ spremnika za svaki čvor koji želite prikazati na istoj nadzornoj ploči.
- Redak 9 - Ovo je ključ za pristup vašem računu početnog stanja. Kopirajte i zalijepite ovaj ključ s računa početnog stanja.
- Red 10 - Ovo je vrijeme između očitanja senzora. Promijenite u skladu s tim.
- Redak 11 - U retku 11 možete navesti metričke ili imperijalne jedinice.
Nakon što ste postavili retke 6-11 u Python skripti na svom Pi, spremite i izađite iz uređivača teksta. Pokrenite skriptu sa sljedećom naredbom:
$ python tempsensor.py
Sada ćete podatke slati na nadzornu ploču početnog stanja. Idite na posljednji odjeljak ovog članka za detalje o tome kako prilagoditi nadzornu ploču.
Korak 6: Rješenje DSB18B20
Vrpčasti kabel povezuje se s GPIO pinovima na Pi. DS18B20 ima tri žice. Crvena žica spaja se na 3.3V. Plavo/crna žica spaja se na masu. Žuta žica spaja se na pull-up otpornik/iglu 4. Nakon što se ovo ožiči, uključite Pi.
Najnovija verzija Raspbiana (kernel 3.18) zahtijeva dodatak vašoj /boot/config.txt datoteci kako bi Pi komunicirao s DS18B20. Za uređivanje ove datoteke pokrenite sljedeće:
$ sudo nano /boot/config.txt
Ako sljedeći redak već nije u ovoj datoteci (ako jest, vjerojatno je pri dnu datoteke), dodajte ga i spremite datoteku.
dtoverlay = w1-gpio, gpiopin = 4
Ponovo pokrenite Pi da bi promjene stupile na snagu.
$ sudo ponovno podizanje sustava
Za pokretanje sučelja za čitanje osjetnika temperature moramo pokrenuti dvije naredbe. Idite na naredbeni redak na svom Pi ili SSH u svom Pi. Upišite sljedeće naredbe:
$ sudo modprobe w1-gpio $ sudo modprobe w1-therm
Izlaz vašeg senzora temperature sada se zapisuje u datoteku na vašem Pi. Da biste pronašli tu datoteku:
$ cd/sys/sabirnica/w1/uređaji
U ovom direktoriju će se nalaziti poddirektorij koji počinje sa „28-“. Nakon “28-” dolazi serijski broj vašeg senzora. cd u taj direktorij. Unutar ovog direktorija datoteka s imenom w1_slave sadrži izlaz vašeg senzora. Upotrijebite nano za pregled sadržaja datoteke. Nakon što unesete datoteku, ona će izgledati otprilike ovako:
a2 01 4b 46 7f ff 0e 10 d8: crc = d8 DAa2 01 4b 46 7f ff 0e 10 d8 t = 26125
Broj iza "t =" je broj koji želimo. Ovo je temperatura u 1/1000 stupnjeva Celzijusa (u gornjem primjeru temperatura je 26.125 C). Trebamo samo jednostavan program koji čita ovu datoteku i raščlanjuje taj broj. Doći ćemo do toga za samo sekundu.
Sada je sve spremno za početak protoka podataka. Da biste otvorili uređivač teksta, u naredbeni redak upišite sljedeće:
$ nano temperature.py
Kopirajte i zalijepite donji kod u uređivač teksta.
uvoz os
import glob vrijeme uvoza iz ISStreamer. Streamer uvoz Streamerstreamer = Streamer (bucket_name = "Temperaturni tok", bucket_key = "piot_temp_stream031815", access_key = "PUT_YOUR_ACCESS_KEY_HERE") os.system ('modprobe w1-gpys') os -therm ') base_dir ='/sys/bus/w1/devices/'device_folder = glob.glob (base_dir + '28*') [0] device_file = device_folder + '/w1_slave' def read_temp_raw (): f = open (device_file, 'r') retki = f.readlines () f.close () povratni redovi def read_temp (): lines = read_temp_raw () dok su retci [0].strip () [-3:]! = 'YES': time.sleep (0.2) retci = read_temp_raw () equals_pos = lines [1].find ('t =') if equals_pos! = -1: temp_string = lines [1] [equals_pos+2:] temp_c = float (temp_string) / 1000.0 vraćanje temp_c dok je True: temp_c = read_temp () temp_f = temp_c * 9.0 / 5.0 + 32.0 streamer.log ("temperatura (C)", temp_c) streamer.log ("temperatura (F)", temp_f) vrijeme.spavanje (0,5)
Ključ za pristup početnom stanju morate staviti u redak 6 umjesto PUT_YOUR_ACCESS_KEY_HERE (kopirajte ključ za streaming u međuspremnik iz 'Moj račun' i zalijepite ga u kod u nano na vašem terminalu).
Redak 6 stvorit će kantu pod nazivom "Temperaturni tok" na vašem računu početnog stanja (pod pretpostavkom da ste ispravno naveli svoj access_key u ovom istom retku). Redci 8 do 30 ove skripte jednostavno se povezuju sa senzorom DS18B20 kako bi očitali njezinu temperaturu iz datoteke w1_slave o kojoj smo ranije govorili. Funkcija read_temp_raw () u retku 15 čita neobrađenu datoteku w1_slave. Funkcija read_temp () u retku 21 raščlanjuje temperaturu iz te datoteke. Linija 34 poziva ove funkcije kako bi dobila trenutnu temperaturu. Linija 35 pretvara temperaturu iz Celzijevih u Fahrenheitove. Reci 35 i 36 prenose temperaturu na vaš račun početnog stanja. Redak 37 pauzira skriptu na 0,5 sekundi, postavljajući koliko često će se osjetnik temperature čitati i emitirati.
Spremni smo za početak streaminga. Pokrenite sljedeću naredbu:
$ sudo python temperature.py
Vratite se na svoj račun početnog stanja u svom web pregledniku i potražite novu podatkovnu kantu pod nazivom Temperature Stream. Trebali biste vidjeti prijenos podataka o temperaturi uživo. Promijenite temperaturu senzora držeći ga u ruci ili stavljajući u čašu leda.
Sada ćete slati podatke na nadzornu ploču početnog stanja. Idite na posljednji odjeljak ovog članka za detalje o tome kako prilagoditi nadzornu ploču.
Korak 7: Rješenje BME280
Za izradu ovog rješenja trebat će vam sljedeće:
-BME280 Senzor pritiska, temperature i vlage
Ovaj senzor dolazi s iglama koje ćete morati lemiti na senzoru. Preporučujem upotrebu matične ploče s dugim iglama prema dolje u matičnu ploču radi lakšeg lemljenja. Nakon što ovo dovršite, moramo spojiti senzor na Pi.
Spojite VIN pin na senzoru na 3.3V pin 1 na Pi. Spojite pin GND na osjetnik uzemljenja pin 6 na Pi. Spojite SCK pin na senzoru na SCL pin 5 na Pi. Spojite SDI pin na senzoru na SDA pin 3 na Pi. Za ovo rješenje morate koristiti Python 3 i instalirati modul Initial State Streamer koristeći pip3 metodu instaliranja.
Također ćete morati instalirati nekoliko Adafruit Python knjižnica.
pip3 instalirati adafruit-blinkapip3 instalirati pureio pip3 instalirati spidev pip3 instalirati adafruit-GPIO pip3 instalirati adafruit-circuitpython-bme280
Za korištenje senzora moramo omogućiti I2C na Pi.
sudo raspi-config
Ovo će otvoriti Raspberry Pi Software Configuration Tool. Idite na opciju 5 Opcije sučelja. Odavde idite na I2C. Od vas će se zatražiti da li želite omogućiti I2C, odaberite Da i Završi. Sada imate omogućen I2C za komunikaciju sa senzorom.
To možemo isprobati na sljedeći način:
sudo i2cdetect -y 1
Ovo će potvrditi da vaš Pi vidi senzor. Način na koji je spojen, trebao bi prikazati senzor na adresi 77. Ako ne otkrijete senzor, ponovno pokrenite svoj Pi, ponovno omogućite opciju sučelja I2C na vašem Pi i pokušajte ponovno. Nakon što je vaš senzor otkriven, vrijeme je za pokretanje našeg glavnog koda koji će slati podatke u početno stanje. Kreirao je datoteku pod nazivom bme280sensor.py s nano naredbom. Kopirajte i zalijepite kôd iz srži u uređivač teksta. Morat ćete promijeniti redove 12-19.
vrijeme uvoza
import board import busio import adafruit_bme280 iz ISStreamer. Streamer import Streamer # Stvorite objekt knjižnice pomoću naše sabirnice I2C porti2c = busio. I2C (board. SCL, board. SDA) bme280 = adafruit_bme280. Adafruit_BME280_I2C (i2c) # ------- -Korisničke postavke --------- SENSOR_LOCATION_NAME = "Ured" BUCKET_NAME = ": djelomično_sunčano: Sobna temperatura" BUCKET_KEY = "temp1" ACCESS_KEY = "VAŠ KLJUČ ZA PRISTUP" # promijenite ovo tako da odgovara pritisku lokacije (hPa) na razini mora bme280.sea_level_pressure = 1013,25 MINUTES_BETWEEN_READS = 10 METRIC_UNITS = False # --------------------------------- # ILI stvorite objekt knjižnice koristeći naš SPI port sabirnice #spi = busio. SPI (board. SCK, board. MOSI, board. MISO) #bme_cs = digitalio. DigitalInOut (board. D10) #bme280 = adafruit_bme280. Adafruit_BME280_SPI (spi, bme_cs) streamer = Streamer (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY) dok je True: vlažnost = format (bme280.humidity, ".1f") pressure = format (bme280.pressure, ".1f") temp_c = bme280.temperatu re if METRIC_UNITS: streamer.log (SENSOR_LOCATION_NAME + "Temperatura (C)", temp_c) else: temp_f = format (temp_c * 9.0 / 5.0 + 32.0, ".1f") streamer.log (SENSOR_LOCATION_NAME + "Temperatura (F)", temp_f) streamer.log (SENSOR_LOCATION_NAME + "Vlažnost (%)", vlažnost) streamer.log (SENSOR_LOCATION_NAME + "Tlak (hPA)", tlak) streamer.flush () time.sleep (60*MINUTES_BETWEEN_READS)
- Red 12- Ova vrijednost treba biti jedinstvena za svaki čvor/osjetnik temperature. To može biti naziv sobe vašeg čvora senzora, fizička lokacija, jedinstveni identifikator ili bilo što drugo. Samo provjerite je li jedinstven za svaki čvor kako biste bili sigurni da podaci iz ovog čvora idu u vlastiti tok podataka na vašoj nadzornoj ploči.
- Redak 13- Ovo je naziv spremišta podataka. To se može promijeniti u bilo kojem trenutku u korisničkom sučelju početnog stanja.
- Redak 14- Ovo je vaš ključ kante. To mora biti isti ključ spremnika za svaki čvor koji želite prikazati na istoj nadzornoj ploči.
- Redak 15- Ovo je ključ za pristup vašem računu početnog stanja. Kopirajte i zalijepite ovaj ključ s računa početnog stanja.
- Linija 17- Ovo je tlak vaše lokacije (hPa) na razini mora. Ove informacije možete pronaći na većini vremenskih web stranica.
- Red 18 - Ovo je vrijeme između očitanja senzora. Promijenite u skladu s tim. Red 19- Ovdje možete odrediti metričke ili imperijalne jedinice.
Nakon što ste postavili retke 12–19 u Python skripti na svom Pi Zero WH, spremite i izađite iz uređivača teksta. Pokrenite skriptu sa sljedećom naredbom:
$ python3 bme280sensor.py
Sada ćete slati podatke na nadzornu ploču početnog stanja. Idite na posljednji odjeljak ovog članka za detalje o tome kako prilagoditi nadzornu ploču.
Korak 8: Osjetite ŠEŠIR
Prvi korak u korištenju Sense HAT -a je fizička instalacija na vaš Pi. Kad je Pi isključen, pričvrstite ŠEŠIR kako je prikazano na slici.
Ako odlučite koristiti rješenje kako je gore prikazano, možda ćete primijetiti da će očitanja temperature vašeg Sense HAT -a biti malo visoka - to je zato što jesu. Krivac je toplina proizvedena iz Pi -jevog CPU -a zagrijavajući zrak oko Sense HAT -a dok sjedi na vrhu Pi -a. Da bi senzor temperature bio koristan, moramo ili odmaknuti HAT od Pi ili pokušati kalibrirati očitanje osjetnika temperature. Dobro rješenje za odvajanje senzora od Pi je kabel koji omogućuje da Sense HAT visi dalje od Pi. 6 , 40-pinski IDE kabel produžnog kabela s muškim na ženski spoj će uspjeti.
Kad se odlučite za dvije opcije, uključite svoj Pi. Moramo instalirati knjižnicu Python kako bismo olakšali čitanje vrijednosti senzora iz Sense HAT -a. Prvo ćete morati osigurati da je sve ažurirano na vašoj verziji Raspbiana:
$ sudo apt-get ažuriranje
Zatim instalirajte knjižnicu Sense HAT Python:
$ sudo apt-get install sense-hat
Ponovo pokrenite Pi. Spremni smo testirati Sense HAT čitanjem podataka senzora s njega i slanjem tih podataka u početno stanje.
Izradite datoteku pod nazivom sensehat i otvorite je u uređivaču teksta unosom sljedeće u naredbeni redak:
$ nano sensehat.py
Kopirajte i zalijepite donji kod u uređivač teksta.
from sense_hat uvoz SenseHat
import time import sys from ISStreamer. Streamer import Streamer # --------- Korisničke postavke --------- BUCKET_NAME = "Vrijeme u uredu" BUCKET_KEY = "sensehat" ACCESS_KEY = "Vaš_Access_Key" SENSOR_LOCATION_NAME = " Ured "MINUTES_BETWEEN_SENSEHAT_READS = 0.1 # --------------------------------- streamer = Streamer (ime kante = BUCKET_NAME, kanta_key = BUCKET_KEY, access_key = ACCESS_key 32.0 temp_f = plovak ("{0:.2f}". Format (temp_f)) vlažnost = plovak ("{0:.2f}". Format (vlažnost)) pressure_in = 0.03937008*(pressure_mb) pressure_in = float ("{ 0:.2f} ". Format (pressure_in)) # Ispis i strujanje ispisa SENSOR_LOCATION_NAME +" Temperatura (F): " + str (temp_f) ispis SENSOR_LOCATION_NAME +" Vlažnost (%): " + str (vlažnost) ispis SENSOR_LOCATION_NAME +" Tlak (IN): " + str (pressure_in) streamer.log (": sunny: " + SEN SOR_LOCATION_NAME + "Temperatura (F)", temp_f) streamer.log (": sweat_drops:" + SENSOR_LOCATION_NAME + "Vlažnost (%)", vlažnost) streamer.log (": cloud:" + SENSOR_LOCATION_NAME + "Tlak (IN)", pressure_in) streamer.flush () time.sleep (60*MINUTES_BETWEEN_SENSEHAT_READS)
U prvom retku primijetite da uvozimo knjižnicu SenseHat u skriptu. Prije nego pokrenete ovu skriptu, moramo postaviti naše korisničke parametre.
# --------- Korisničke postavke ---------
BUCKET_NAME = "Vrijeme u uredu" BUCKET_KEY = "sensehat" ACCESS_KEY = "Vaš_Access_Key" SENSOR_LOCATION_NAME = "Ured" MINUTES_BETWEEN_SENSEHAT_READS = 0.1# ------------------------- --------
Konkretno, morate postaviti svoj ACCESS_KEY na ključ pristupa računu početnog stanja. Možete promijeniti BUCKET_NAME i SENSOR_LOCATION_NAME na stvarnu lokaciju senzora. Spremite i izađite iz uređivača teksta.
U naredbenom retku na svom Pi pokrenite skriptu:
$ sudo python sensehat.py
Sada ćete slati podatke na nadzornu ploču početnog stanja. Idite na posljednji odjeljak ovog članka za detalje o tome kako prilagoditi nadzornu ploču.
Korak 9: Prilagodite početnu nadzornu ploču stanja
Idite na svoj račun početnog stanja i pogledajte svoje podatke. Možete kliknuti desnom tipkom miša na pločicu za promjenu vrste grafikona i kliknite Uredi pločice za promjenu veličine i pomicanje pločica. Preporučio bih korištenje termostata za mjerenje temperature i razine tekućine za mjerenje vlage. Možete stvoriti linijske grafikone za temperaturu i vlažnost kako biste vidjeli promjene tijekom vremena. Na nadzornu ploču možete dodati i pozadinsku sliku.
Možete postaviti upozorenja okidača tako da možete dobiti SMS ili e -poruku ako temperatura padne ispod ili pređe određeni prag. Idite u svoju podatkovnu korpu i kliknite postavke. Odatle idite na karticu Okidači. Unesite ključ streama koji želite nadzirati, operatora kojeg želite koristiti i vrijednost praga. Pritisnite znak plus da biste dodali okidač. Zatim ćete unijeti svoju e -adresu ili telefonski broj na koji ćete primiti upozorenje i kliknuti znak plus. Nakon što postavite sve okidače, kliknite gumb Gotovo pri dnu.
Sada kada ste stvorili monitor temperature pomoću senzora temperature i Raspberry Pi, možete početi razmišljati o tome koje druge podatke o okolišu možete sljedeće pratiti.
Preporučeni:
Kako izgraditi biljni monitor s Arduinom: 7 koraka
Kako izgraditi monitor biljaka s Arduinom: U ovom ćemo vodiču naučiti kako detektirati vlagu u tlu pomoću senzora vlage i treptati zelenom LED diodom ako je sve u redu te OLED zaslonom i Visuinom. Pogledajte video
Kako izgraditi senzor za parkiranje kako biste riješili bol u pronalaženju slobodnog mjesta: 12 koraka
Kako izgraditi senzor za parkiranje kako biste riješili bol u pronalaženju slobodnog mjesta: U ovom ćemo projektu izgraditi jednostavan senzor za parkiranje pomoću Raspberry Pi. Ispostavilo se da se svako jutro moram suočiti s ovim pitanjem: je li JEDINO parkirno mjesto ispred mog ureda već zauzeto? Jer kad to zaista jest, moram obići
Kako izgraditi Cubesat temperature: 5 koraka
Kako izgraditi temperaturni kocku: Zamislite da imate mogućnost istraživanja planeta koristeći samo kocku 10x10x10. Sada možete! (Napomena: Ovaj projekt zapravo neće ići na Mjesec, oprostite) Moje ime je Alyssa, a u ovom Instructableu ću vam pokazati kako moja dva partnera (Stormi i H
Kako izgraditi EKG i digitalni monitor otkucaja srca: 6 koraka
Kako izgraditi EKG i digitalni monitor otkucaja srca: Elektrokardiogram (EKG) mjeri električnu aktivnost otkucaja srca kako bi pokazao koliko brzo srce kuca, kao i njegov ritam. Postoji električni impuls, poznat i kao val, koji putuje kroz srce kako bi srčani mišić postao p
Kako izgraditi kutiju zvučnika za gitaru ili izgraditi dvije za svoj stereo .: 17 koraka (sa slikama)
Kako izgraditi kutiju za zvučnike na gitari ili izgraditi dvije za svoj stereo uređaj. Htio sam novi zvučnik za gitaru uz cijevno pojačalo koje gradim. Zvučnik će ostati vani u mojoj trgovini pa ne mora biti ništa posebno. Tolex prekrivač mogao bi se previše lako oštetiti pa sam samo poprskao crnu vanjsku stranu nakon laganog pijeska