Kazalo:

Osebni meteorolog: 5 korakov
Osebni meteorolog: 5 korakov

Video: Osebni meteorolog: 5 korakov

Video: Osebni meteorolog: 5 korakov
Video: САЛО. ЖАРЕННАЯ КАРТОШКА С ЛУКОМ. УЧУ ДЕТЕЙ ГОТОВИТЬ 2024, Julij
Anonim
Osebni meteorolog
Osebni meteorolog

Ste se kdaj vprašali, ali ali vaš meteorolog govori resnico? Ali želite diskreten, poceni in hiter način, da postanete svoj meteorolog … in morda majhen projekt? Ne glej več! Ta poenostavljena naprava bo spremljala vremenske razmere s katere koli lokacije in vam omogočila spremljanje vremena s pritiskom na gumb.

Ta projekt vam bo omogočil nekaj vaje s tipkami Flask, Raspberry Pis, GPIO in HTML! Ne samo, da je zabavno graditi, ampak ima tudi veliko uporabnosti. Morda bo vaš meteorolog brez službe …

Zaloge

  • Malina Pi 3
  • Micro SD kartica
  • 1 žica v razsutem stanju
  • 4 moške žice za moške
  • 1 Senzor DHT11
  • 1 Baterija

Če nameravate postati lastni zanesljivi meteorolog na več lokacijah, pomnožite vsako zalogo s številom naprav, ki jih potrebujete. Koda za podporo več naprav pa se bo razlikovala. Če ste v postopku izdelave/testiranja te naprave, ni nujno, da imate naslednje … vsekakor pa bi bilo v veliko pomoč.

  • Računalniški monitor
  • USB tipkovnica
  • Komplet za polnjenje mikro USB

1. korak: Ožičenje

Ožičenje
Ožičenje
Ožičenje
Ožičenje

Z uporabo Raspberry Pi moramo glavni senzor integrirati v vir napajanja Raspberry Pi, da lahko izvede potrebne meritve. Glavni senzor, uporabljen v tem projektu, na zgornji sliki, beleži temperaturo in vlažnost okoliškega fizičnega okolja. S senzorjem ali drugo montažno napravo lahko namestite ta senzor in napeljete naše žice ali pa ga preprosto povežete prek žic žensko-žensko neposredno na zatiče na napravi Raspberry Pi.

Sledite zgornji shemi ožičenja za pravilno povezavo senzorja z Raspberry Pi. Upoštevajte, da je potreben vir napajanja, baterija ali neposredna bližina stenske vtičnice.

2. korak: Nastavite

Čestitamo, vaša strojna oprema je sestavljena!

Zdaj bomo začeli delati neposredno z Raspberry Pi in programsko opremo projekta. Vse to lahko storite na Raspberry Pi s tipkovnico in monitorjem ali prek SSH. Naslednje knjižnice so potrebne za zagotovitev, da se lahko vsa programska oprema izvaja na vašem Raspberry Pi. Z ukazom »pip install« lahko programska oprema pozneje uporablja naslednje knjižnice:

  • zahteve
  • RPi. GPIO
  • bučko
  • flask_restful
  • flask_wtf
  • wtforms

Upoštevajte, da se bo vreme lahko med namestitvijo teh knjižnic nekajkrat spremenilo … bodite potrpežljivi, tako blizu ste, da odklenete svoje meteorološke zmogljivosti!

Zdaj, ko ste namestili vse svoje knjižnice, se seznanimo s Flaskom, lahkim okvirom, ki omogoča preprosto komunikacijo med vozlišči v okolju našega projekta. V tem projektu Raspberry Pi postane strežnik. S preprostim primerom aplikacije se lahko s Flaskom udobno počutite.

3. korak: Koda in zagon

Zdaj, ko ste sestavili knjižnice strojne in programske opreme, ste pripravljeni na začetek izdelave projektnih datotek.

Strežnik: V tem projektu Raspberry Pi, ki je povezan s senzorjem, deluje kot strežnik. Strežnik čaka, da uporabnik dokonča zahtevo po objavi temperature, vlažnosti ali grafa. Ustvarili smo predloge HTML, ki so konfigurirane za ustrezno interakcijo z zahtevo aplikacije po temperaturi, vlažnosti, grafikonu ali kateri koli kombinaciji treh (glejte mapo predloge). To pomeni, da če uporabnik želi samo temperaturo, ne bo videl ničesar v zvezi z vlažnostjo, razen možnosti obrazca za odčitavanje vlažnosti. Ko je objava objavljena, strežnik zbere podatke iz objave in izvede dejanje, ki ga je zahteval uporabnik. Senzor DHT dobi odčitke, ki se nato shranijo in posredujejo kot argument slovarja z novo obliko html, ki jo upodabljamo. Strežnik shrani tudi te odčitke, da ustvari graf prejšnjih odčitkov na zahtevo uporabnika.

Aplikacija: Aplikacija pošilja zahteve HTTP strežniku Flask, da pridobi in upodobi temperaturo, vlažnost in vizualni prikaz temperature in vlažnosti zadnjih štiriindvajsetih zahtev, nastavljenih iz obrazca na zahtevo uporabnika. Aplikacija uporablja obrazec za steklenice, ki ima za vsako po tri logična polja za vnos. Uporabnik lahko označi polje za katero koli kombinacijo treh polj, ki jih želi videti. Ne morejo nadzorovati nič drugega kot da/ne, želijo si ogledati te podatke. Naredili smo edinstveno html datoteko, ki jo uporabljamo za upodabljanje glede na zahtevo uporabnika. To se naredi tako, da uporabnik zahteva le odčitke, ki so prikazani. Ne želimo, da uporabnik zahteva temperaturo in naj pogleda prazno predlogo za vlažnost ali prazen graf.

4. korak: Testiranje

Naprava teče skozi datoteko: mainsense.py. Kar prinaša datoteko formSense.py, ki vsebuje naš razred Flask Form, ki ga uporablja aplikacija. Strežnik najprej prikaže "sense.html", nato pa počaka, da uporabnik poda zahtevo. mainsense.py nato počaka, da dobi odčitke senzorja v trenutku, ko zahteva GET od aplikacije zahteva temperaturo ali vlažnost in shrani prejšnjih 24 odčitkov od uporabnikov. Obstaja tudi možnost grafa, po kateri lahko uporabnik izbere, katere grafe je prejšnji odčitki, največ 24, naredil uporabnik. Vidite lahko tudi, da html vključuje samo možnosti obrazcev, ki jih lahko uporabnik uporabi za vnovično zahtevo, in odčitke, ki jih je zahteval uporabnik.

Nato bi morali biti sposobni krmariti do pravilnega URI/IP in nastaviti ustrezno komunikacijsko linijo med aplikacijo in strežnikom. Poskusite poslati nekaj testnih zahtev GET in zagotoviti, da se senzor pravilno odziva z ustreznimi odčitki vašega senzorja. Če vaš program pravilno spremlja vreme ob uri, smo uradno pripravljeni izbrisati kabel - to je, če ste čakali na vremenski kanal!

5. korak: Montaža

Namestitev naprave je precej samoumevna. V bistvu morate le zagotoviti, da je naprava priključena na baterijo ali vtičnico, in z ukaznimi trakovi pritrdite napravo na želeno mesto za spremljanje vremena.

Opomba: Naprava mora biti nameščena tako, da je senzor varen pred hudimi vremenskimi razmerami na vaši lokaciji. Ko je to končano, bi morali imeti možnost vstaviti SSH v napravo in zagnati strežnik. Odprite spletno mesto in vedite, da z lokacije vašega strežnika Raspberry Pi dobivate najnovejše vremenske meritve.

Priporočena: