Cuprins:
- Provizii
- Pasul 1: Cablare
- Pasul 2: Configurați
- Pasul 3: Cod și rulare
- Pasul 4: Testare
- Pasul 5: Montare
Video: Meteorolog personal: 5 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:42
Te-ai întrebat vreodată dacă sau când meteorologul tău spune adevărul? Vrei un mod discret, ieftin și rapid de a fi propriul tău meteorolog … și poate un mic proiect? Nu mai căuta! Acest dispozitiv simplist va urmări condițiile meteorologice din orice locație doriți și vă va oferi posibilitatea de a monitoriza acea vreme la simpla apăsare a unui buton.
Acest proiect vă va oferi puțină practică cu Flask, Raspberry Pis, senzori GPIO și HTML! Nu numai că este distractiv să construiești, dar are multă utilitate. Meteorologul tău s-ar putea să nu mai aibă un loc de muncă …
Provizii
- Raspberry Pi 3
- Card micro SD
- 1 sârmă în vrac
- 4 fire de la mascul la mascul
- 1 senzor DHT11
- 1 Baterie
Dacă intenționați să fiți propriul dvs. meteorolog de încredere pentru mai multe locații, înmulțiți fiecare aprovizionare cu câte dispozitive veți avea nevoie. Cu toate acestea, codul care acceptă mai multe dispozitive va diferi. Dacă sunteți în procesul de construire / testare a acestui dispozitiv, nu este necesar să aveți următoarele … cu toate acestea, ar fi cu siguranță foarte util.
- Un monitor de computer
- O tastatură USB
- Set de încărcare micro USB
Pasul 1: Cablare
Folosind Raspberry Pi, trebuie să integrăm senzorul principal la sursa de alimentare a Raspberry Pi, astfel încât să poată face măsurătorile de care avem nevoie. Senzorul principal utilizat în acest proiect, ilustrat mai sus, înregistrează temperatura și umiditatea mediului fizic înconjurător. Puteți utiliza o placă de măsurare sau un alt dispozitiv de montare pentru a plasa acest senzor și pentru a rula firele noastre sau pur și simplu conectat prin fire de la mamă la mamă direct la pinii de pe dispozitivul Raspberry Pi.
Urmând schema de cablare prezentată mai sus pentru a conecta corect senzorul la Raspberry Pi. Rețineți că este necesară o sursă de alimentare, un acumulator sau o apropiere de o priză de perete.
Pasul 2: Configurați
Felicitări, hardware-ul dvs. a fost asamblat!
Acum vom începe să lucrăm direct cu Raspberry Pi și software-ul proiectului. Toate următoarele se pot face pe Raspberry Pi cu tastatură și monitor sau prin SSH. Următoarele biblioteci sunt necesare pentru a vă asigura că toate software-urile pot fi rulate pe Raspberry Pi. Folosind comanda „pip install” pentru a permite software-ului dvs. să utilizeze ulterior următoarele biblioteci:
- solicitări
- RPi. GPIO
- balon
- balon_restful
- flask_wtf
- wtforms
Rețineți că vremea se poate schimba de câteva ori în timp ce aceste biblioteci sunt instalate … aveți răbdare, sunteți atât de aproape de a vă debloca capacitățile meteorologice!
Acum, că ați instalat toate bibliotecile dvs., să facem cunoștință cu Flask, un cadru ușor care permite o comunicare simplă între nodurile din mediul proiectului nostru. În acest proiect, Raspberry Pi devine un server. Vă puteți simți confortabil cu Flask cu exemplul simplu de aplicație aici.
Pasul 3: Cod și rulare
Acum că ați asamblat bibliotecile hardware și software, sunteți gata să începeți construirea fișierelor de proiect.
Server: în acest proiect, Raspberry Pi care este conectat la senzor acționează ca server. Serverul așteaptă ca utilizatorul să completeze o cerere de postare a temperaturii, umidității sau a graficului. Am creat șabloane HTML care sunt configurate pentru a interacționa corect cu cererea aplicației de temperatură, umiditate, grafic sau orice combinație a celor trei (consultați folderul șablon). Adică, dacă utilizatorul dorește doar temperatură, nu va vedea nimic în ceea ce privește umiditatea, în afară de opțiunea formular, pentru a obține o citire a umidității. Odată realizată o postare, serverul colectează informațiile din postare și efectuează acțiunea cerută de utilizator. Senzorul DHT primește citirile care sunt apoi stocate și transmise ca argument de dicționar cu noul formular html pe care îl redăm. Serverul stochează, de asemenea, acele citiri pentru a crea un grafic al citirilor anterioare la cererea utilizatorului.
Aplicație: Aplicația trimite cereri HTTP către serverul Flask pentru a prelua și reda temperatura, umiditatea și o reprezentare vizuală a temperaturii și umidității ultimelor douăzeci și patru de cereri setate din formular la cererea utilizatorului. Aplicația utilizează un formular Flask care are trei câmpuri de intrare booleene pentru fiecare. Utilizatorul poate bifa o casetă pentru orice combinație a celor trei câmpuri pe care dorește să le vadă. Nu pot controla nimic altceva decât da / nu și vor să vadă acele informații. Am creat un fișier html unic pe care îl folosim pentru a reda în funcție de solicitarea utilizatorului. Acest lucru se face astfel încât numai citirile care sunt afișate să fie cele solicitate de utilizator. Nu vrem ca utilizatorul să solicite temperatura și să-i facă să se uite la un șablon gol pentru umiditate sau la un grafic gol.
Pasul 4: Testare
Dispozitivul rulează prin fișierul: mainsense.py. Care introduce fișierul formSense.py care conține clasa noastră Flask Form care este utilizată de aplicație. Serverul redă inițial „sense.html” și apoi așteaptă ca utilizatorul să facă o cerere. mainsense.py așteaptă apoi să obțină citiri de la senzor la un moment dat când o cerere GET de la aplicație cere temperatura sau umiditatea și stochează cele 24 de citiri anterioare de la utilizatori. Există, de asemenea, o opțiune grafică pe care utilizatorul ar putea să o aleagă care sunt graficele citirilor anterioare, cel mult 24, realizate de utilizator. Puteți vedea, de asemenea, că html include doar opțiunile de formular pe care utilizatorul le poate folosi pentru a face o altă solicitare și citirile solicitate de utilizator.
Apoi ar trebui să puteți naviga la URI / IP corect și să setați linia de comunicație corectă între aplicația dvs. și server. Ar trebui să încercați să trimiteți câteva cereri GET de testare și să vă asigurați că senzorul răspunde corect cu citirile corespunzătoare de la senzor. Apoi, dacă programul dvs. urmărește în mod corespunzător vremea din oră, suntem oficial pregătiți să ștergem cablul - asta dacă ați fi agățat de canalul meteo!
Pasul 5: Montare
Montarea dispozitivului se explică de la sine. Practic, trebuie doar să vă asigurați că dispozitivul este conectat la acumulator sau la o priză și să utilizați benzi de comandă pentru a fixa dispozitivul în locația dorită pentru a monitoriza vremea.
Notă: dispozitivul trebuie să fie poziționat cu senzorul în siguranță de condițiile meteorologice feroce ale locației dvs. Odată ce acest lucru este finalizat, ar trebui să puteți face SSH pe dispozitiv și să începeți să rulați serverul. Deschideți site-ul web și știți că obțineți cele mai actualizate măsurători ale vremii din locația în care a fost plasat serverul dvs. Raspberry Pi.
Recomandat:
Cum să faci un mini ventilator personal de birou dintr-un computer vechi - Se potrivește în buzunar: 6 pași
Cum să faci un mini ventilator personal de birou dintr-un computer vechi - se potrivește în buzunar: Îți voi arăta cum să faci un mini ventilator personal de birou dintr-un computer vechi. Un bonus este că se potrivește chiar și în buzunar. Acesta este un proiect foarte simplu, deci nu este nevoie de multă experiență sau expertiză. Deci, să începem
Arc Reactor a La Smogdog, un proiect foarte personal : 13 pași (cu imagini)
Arc Reactor a La Smogdog, un proiect foarte personal …: Ce am în comun cu acești doi tipi? Nu este barba de data asta! Cu toții avem o gaură în piept, ei bine, eu și Leo ne-am născut cu Pectus Excavatum, Stark a trebuit să câștige: -) Pectus Excavatum este (căutați-l aici: https: // ro .wikipedia.org / wik
PROYECTO TUTORIAL PERSONAL: 5 pași
PROYECTO PERSONAL TUTORIAL: Acest proiect constă într-un element liber, și creează un produs al investigației ó n de această temă. La investigaci ó n, planeaci ó n, acci ó n y reflexi ó n del proyecto son escritas in un informe, y todo el registro de
Asistent personal - Mașină de inteligență: 7 pași
Asistent personal - Mașină de inteligență: în lumea agitată de astăzi, nu aveți suficient timp pentru a rămâne conectat cu lumea exterioară, precum și cu cea socială. Este posibil să nu aveți suficient timp pentru a obține actualizări zilnice cu privire la actualitate, precum și la lumea socială, cum ar fi facebook sau gmail.One
Sistem de alarmă GSM personal - Modul SMS SIM900A, Arduino: 3 pași
Sistem de alarmă GSM personal - Modul SMS SIM900A, Arduino: De câteva ori pe lună îmi aduc vechea mătușă la biserica locală. Uneori, slujba bisericii durează mult mai mult, iar timpul de încheiere este greu de prezis. Așa că, după câteva jumătate de oră de așteptare, m-am gândit că ar fi mai bine dacă ea mă putea avertiza că serviciul a avut