Cuprins:
- Provizii
- Pasul 1: Asamblare
- Pasul 2: Configurare software
- Pasul 3: Script Python
- Pasul 4: Tablou de bord
- Pasul 5: Executare automată și monitorizare proces și IP
- Pasul 6: Concluzie
Video: Rețea de senzori de temperatură: 6 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
Temperatura și umiditatea sunt date vitale în laborator, bucătărie, linie de fabricație, birou, roboți ucigași și chiar acasă. Dacă trebuie să monitorizați mai multe locații sau camere sau spații, aveți nevoie de ceva care să fie fiabil, compact, precis și accesibil. Puteți cumpăra senzori scumpi, dar dacă monitorizați mai multe camere, acest lucru vă poate determina creșterea cheltuielilor. Acest tutorial vă va arăta cum să construiți acești senzori și să vă monitorizați datele, fără a sparge banca.
Aceasta este o aplicație perfectă pentru un Raspberry Pi Zero WH de 14 USD, deoarece acest dispozitiv este compact, ieftin, puternic și are WiFi încorporat. Configurarea pentru fiecare nod al senzorului va costa ~ 31 USD plus transportul, taxele și carcasa. Puteți obține cu ușurință fiecare articol de mai sus în bloc pentru a minimiza costurile de expediere, cu excepția Raspberry Pi Zero WH, care poate fi mai dificilă în afara Marii Britanii. Nu puteți găsi un furnizor care să vă permită să cumpărați mai multe reguli Zero per Raspberry Pi Foundation.
Folosim Zero WH de 14 USD în loc de Zero W de 10 USD, deoarece Zero WH are antetul pre-lipit, ceea ce va face ca ansamblul proiectului nostru să fie rapid și ușor. Folosim senzorul de temperatură / umiditate DHT22 datorită preciziei sale de temperatură (+/- 0,5 ° C), intervalului de umiditate (0-100%) și costului redus. De asemenea, ne dorim ceva foarte ușor de conectat fără a fi nevoie să adăugăm un rezistor pull-up.
Provizii
- Raspberry Pi Zero WH (14 USD)
- Card Micro SD (4 USD)
- Alimentare Raspberry Pi (8 USD)
- Senzor de temperatură / umiditate DHT22 (5 USD)
- (Opțional) Carcasă Raspberry Pi Zero W (6 USD)
Pasul 1: Asamblare
DHT22 va avea trei pini pe care va trebui să îi conectați la Pi Zero WH: 5V, masă și date. Pinul de alimentare de pe DHT22 va fi etichetat „+” sau „5V”. Conectați-l la pinul 2 (pinul din dreapta sus, 5V) al Pi Zero WH. Pinul de masă de pe DHT22 va fi etichetat „-” sau „Gnd”. Conectați acest lucru la pinul 6 (doi pini sub pinul de 5V) de pe Pi Zero WH. Pinul rămas de pe DHT22 este pinul de date și va fi etichetat „out” sau „s” sau „data”. Conectați-l la unul dintre pinii GPIO de pe Zero WH, cum ar fi GPIO4 (pinul 7). Conexiunile dvs. ar trebui să arate ca imaginea inclusă.
Pasul 2: Configurare software
Veți avea nevoie de un monitor și tastatură pentru a vă configura Pi Zero WH prima dată. Odată ce este configurat, nu veți avea nevoie nici de un monitor, nici de o tastatură pentru a rula atunci când este implementat în spațiul dvs. Vrem să păstrăm fiecare nod cât mai mic și mai compact posibil.
- Trebuie să instalați sistemul de operare standard Raspbian, astfel încât Pi Zero WH să pornească. Puteți urma instrucțiunile de pe site-ul web Raspberry Pi pentru a vă configura Pi Zero WH.
- Conectați-vă Pi Zero WH la rețeaua WiFi. Puteți urma instrucțiunile de pe site-ul Raspberry Pi pentru a vă conecta Pi Zero WH la WiFi.
- Instalați modulul Adafruit DHT Python pe Pi pentru a facilita citirea datelor senzorului DHT22. Introduceți următoarele în promptul de comandă:
$ sudo pip instala Adafruit_DHT
Acum aveți tot ce aveți nevoie pentru a comunica cu senzorul dvs. Apoi, aveți nevoie de o destinație pentru datele senzorului, astfel încât să le puteți transforma într-un tablou de bord minunat sau o alertă SMS / e-mail. Vom folosi Starea inițială pentru acest pas al proiectului.
- Înregistrați-vă pentru un cont la
- Instalați modulul ISStreamer pe promptul de comandă:
$ sudo pip instalează ISStreamer
Pasul 3: Script Python
Cu sistemul nostru de operare instalat împreună cu cele două module Python pentru citirea datelor senzorilor și trimiterea datelor către starea inițială, suntem gata să scriem scriptul nostru Python. Următorul script va crea / adăuga la o bucată de date de stare inițială, va citi datele senzorului DHT22 și va trimite acele date către un tablou de bord în timp real. Tot ce trebuie să faceți este să modificați liniile 6-11.
import Adafruit_DHT
din ISStreamer. Streamer import Timp de import Streamer # --------- Setări utilizator --------- SENSOR_LOCATION_NAME = "Birou" BUCKET_NAME = ": partial_sunny: Temperatura camerei" BUCKET_KEY = "rt0129" ACCESS_KEY = „PLASAȚI AICI CHEIA DE ACCES LA STAT” AICI „MINUTES_BETWEEN_READS = 10 METRIC_UNITS = False # --------------------------------- streamer = Streamer (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY) în timp ce Adevărat: umiditate, temp_c = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) dacă METRIC_UNITS: streamer.log (SENSOR_LOCATION_NAME + "Temp. (C) else: temp_f = format (temp_c * 9.0 / 5.0 + 32.0, ".2f") streamer.log (SENSOR_LOCATION_NAME + "Temperatura (F)", temp_f) umiditate = format (umiditate, ".2f") streamer.log (SENSOR_LOCATION_NAME + „Umiditate (%)”, umiditate) streamer.flush () time.sleep (60 * MINUTES_BETWEEN_READS)
- Linia 6 - Această valoare trebuie să fie unică pentru fiecare nod / senzor de temperatură. Acesta ar putea fi numele camerei nodului senzorului, locația fizică, identificatorul unic sau orice altceva. Asigurați-vă că este unic pentru fiecare nod pentru a vă asigura că datele din acest nod merg la propriul flux de date din tabloul de bord.
- Linia 7 - Acesta este numele cupei de date. Acest lucru poate fi modificat oricând în UI State Initial.
- Linia 8 - Aceasta este cheia cupei. Trebuie să fie aceeași cheie de bucket pentru fiecare nod pe care doriți să îl afișați în același tablou de bord.
- Linia 9 - Aceasta este cheia de acces la contul dvs. de stat inițial. Copiați + lipiți această cheie din contul dvs. de stat inițial.
- Linia 10 - Acesta este timpul dintre citirea senzorului. Schimbați în consecință.
- Linia 11 - Puteți specifica unități metrice sau imperiale.
După ce ați setat liniile 6-11 în scriptul Python de pe Pi Zero WH, salvați și ieșiți din editorul de text. Rulați scriptul cu următoarea comandă:
$ python tempsensor.py
Repetați acești pași pentru fiecare nod al senzorului. Atâta timp cât fiecare nod trimite date către starea inițială utilizând aceeași cheie de acces și aceeași cheie, toate datele vor intra în același compartiment de date și vor apărea pe același tablou de bord.
Pasul 4: Tablou de bord
Accesați contul de stat inițial, faceți clic pe numele cupei de pe raftul cupei și vizualizați datele în tabloul de bord. Puteți să vă personalizați tabloul de bord și să configurați declanșatoarele SMS / e-mail. Imaginea inclusă prezintă un tablou de bord cu trei noduri de senzori care colectează temperatura și umiditatea pentru trei camere diferite.
Puteți alege să adăugați o imagine de fundal la tabloul de bord.
Pasul 5: Executare automată și monitorizare proces și IP
După ce ați instalat mai multe noduri, veți dori o modalitate de a monitoriza fiecare nod pentru a vă asigura că funcționează. Probabil că veți rula fiecare nod senzor fără monitor sau tastatură / mouse pentru a-l păstra compact. Asta înseamnă că veți dori ca fiecare nod să pornească și să ruleze automat scriptul. Puteți utiliza contul dvs. de stare inițială pentru a crea un proces la îndemână / tabloul de bord al adresei IP, așa cum se arată mai sus. Un tutorial detaliat despre crearea acestui tablou de bord și configurarea dispozitivului Pi Zero WH pentru a rula automat scriptul Python la pornire poate fi găsit aici.
Pasul 6: Concluzie
Odată ce ați pus în funcțiune un singur nod senzor, este ușor și relativ ieftin să vă copiați configurarea de câte ori este nevoie. Folosirea unui Pi Zero WH vă oferă flexibilitatea pentru a rula alte sarcini, deoarece are atât de multă putere. De exemplu, puteți utiliza unul dintre Pi Zero WH pentru a extrage datele meteo locale dintr-un API meteo și pentru a le adăuga la tabloul de bord al senzorului. Dacă decideți să vă dezafectați nodurile senzorilor, puteți reutiliza Pi-urile WH pentru alte proiecte. Această flexibilitate ajută investițiile în proiectul dvs. în viitor.
Recomandat:
Automatizarea unei sere cu LoRa! (Partea 1) -- Senzori (temperatură, umiditate, umiditate a solului): 5 pași
Automatizarea unei sere cu LoRa! (Partea 1) || Senzori (temperatură, umiditate, umiditate a solului): În acest proiect vă voi arăta cum am automatizat o seră. Asta înseamnă că vă voi arăta cum am construit sera și cum am conectat electronica de putere și automatizare. De asemenea, vă voi arăta cum să programați o placă Arduino care utilizează L
Rețea de senzori wireless cu cost redus pe banda de 433 MHz: 5 pași (cu imagini)
Rețea de senzori wireless cu cost redus pe banda de 433 MHz: Multe mulțumiri Teresa Rajba pentru că mi-a acordat acceptul de a folosi datele din publicațiile lor din acest articol. * În imaginea de mai sus - cele cinci unități senzor-expeditor pe care le-am folosit pentru testare. rețele? O definiție simplă
Rețea de stații de senzori pentru iluminat și control de securitate: 5 pași (cu imagini)
Rețea de stații de senzori pentru iluminat și control de securitate: Cu această rețea de stații de senzori configurată în modul master / slave, veți putea efectua controlul de iluminare și securitate în casa dvs. Aceste stații de senzori (Node01, Node02 în acest proiect) sunt conectate la o stație master (Node00) conectată la yo
O rețea WiFi Arduino (senzori și actuatori) - senzorul de culoare: 4 pași
O rețea WiFi Arduino (senzori și actuatori) - senzorul de culoare: de câte ori în aplicațiile dvs. aveți un senzor sau un actuator departe de dvs.? Cât de mult ar putea fi confortabil să folosiți un singur dispozitiv master lângă computerul dvs. pentru a gestiona diferite dispozitive slave conectate printr-o rețea wi-fi? În acest proiect
Controler de rețea senzor de temperatură tolerant la defecțiuni: 8 pași
Controler de rețea senzor de temperatură tolerant la defecțiuni: Acest manual vă arată cum puteți converti o placă Arduino Uno într-un controler cu un singur scop pentru un set de senzori de temperatură DS18B20 capabili de izolare automată a senzorilor defecți. Controlerul poate gestiona până la 8 senzori cu Arduino O.N.U. (A