Indholdsfortegnelse:

Personlig Meteorolog: 5 trin
Personlig Meteorolog: 5 trin

Video: Personlig Meteorolog: 5 trin

Video: Personlig Meteorolog: 5 trin
Video: Дневник хранящий жуткие тайны. Переход. Джеральд Даррелл. Мистика. Ужасы 2024, November
Anonim
Personlig Meteorolog
Personlig Meteorolog

Har du nogensinde spekuleret på, om eller hvornår din meteorolog fortæller sandheden? Vil du have en diskret, billig og hurtig måde at være din egen meteorolog … og måske et lille projekt? Stop med at lede! Denne forenklede enhed sporer vejrforholdene fra ethvert sted, du ønsker, og giver dig mulighed for at overvåge vejret med et tryk på en knap.

Dette projekt giver dig lidt øvelse med kolbe, hindbærpis, GPIO -sensorer og HTML! Det er ikke kun sjovt at bygge, men det har en masse nytteværdi. Din meteorolog er måske lige uden job …

Forbrugsvarer

  • Raspberry Pi 3
  • Micro SD -kort
  • 1 Bulktråd
  • 4 mandlige til mandlige ledninger
  • 1 DHT11 sensor
  • 1 Batteri

Hvis du planlægger at være din egen pålidelige meteorolog flere steder, skal du gange hver forsyning med, hvor mange enheder du skal bruge. Koden til understøttelse af flere enheder vil dog variere. Hvis du er i gang med at bygge/teste denne enhed, er det ikke nødvendigt at have følgende … men det ville helt sikkert være meget nyttigt.

  • En computerskærm
  • Et USB -tastatur
  • Micro USB opladningssæt

Trin 1: Ledningsføring

Ledninger
Ledninger
Ledninger
Ledninger

Ved hjælp af Raspberry Pi skal vi integrere hovedsensoren i Raspberry Pi's strømkilde, så den kan foretage de målinger, vi har brug for. Hovedsensoren, der blev brugt i dette projekt, vist på billedet ovenfor, registrerer temperaturen og fugtigheden i det omgivende fysiske miljø. Du kan bruge et brødbræt eller en anden monteringsenhed til at placere denne sensor på og køre vores ledninger igennem eller blot tilslutte den via hun-til-hun ledninger direkte til stifterne på Raspberry Pi-enheden.

Følg ledningsskemaet vist ovenfor for korrekt at forbinde sensoren til Raspberry Pi. Bemærk, at der er brug for en strømkilde, en batteripakke eller tæt på en stikkontakt.

Trin 2: Opsætning

Tillykke, din hardware er blevet samlet!

Vi skal nu begynde at arbejde direkte med Raspberry Pi og softwaren til projektet. Alt det følgende kan gøres på Raspberry Pi med et tastatur og en skærm eller via SSH. Følgende biblioteker er nødvendige for at sikre, at al software kan køres på din Raspberry Pi. Brug af kommandoen "pip install" til at give din software mulighed for senere at bruge følgende biblioteker:

  • anmodninger
  • RPi. GPIO
  • kolbe
  • flask_restful
  • flask_wtf
  • wtforms

Bemærk vejret kan ændre sig et par gange, mens disse biblioteker er installeret … vær tålmodig, du er så tæt på at låse dine meteorologiske muligheder op!

Nu hvor du har installeret alle dine biblioteker, skal vi stifte bekendtskab med Flask, en let ramme, der giver mulighed for enkel kommunikation mellem noder i vores projekts miljø. I dette projekt bliver Raspberry Pi en server. Du kan blive fortrolig med Flask med det enkle applikationseksempel her.

Trin 3: Kode og kørsel

Nu hvor du har samlet hardware- og softwarebibliotekerne, er du klar til at begynde at konstruere projektfilerne.

Server: I dette projekt fungerer Raspberry Pi, der er forbundet til sensoren, som serveren. Serveren venter på, at brugeren udfylder en postanmodning om temperatur, luftfugtighed og eller grafen. Vi skabte HTML -skabeloner, der er konfigureret til korrekt at interagere med applikationens anmodning om temperatur, fugtighed, graf eller enhver kombination af de tre (se skabelonmappen). Det vil sige, at hvis brugeren kun ønsker temperatur, vil han ikke se noget andet vedrørende fugtighed end formularen for at få en fugtighedsaflæsning. Når der er foretaget et indlæg, indsamler serveren oplysningerne fra opslaget og udfører den handling, brugeren anmodede om. DHT -sensoren får de aflæsninger, som derefter gemmes og videregives som et ordbogsargument med den nye html -formular, vi gengiver. Serveren gemmer også disse aflæsninger for at oprette en graf over tidligere aflæsninger, når brugeren anmoder om det.

Ansøgning: Applikationen sender HTTP-anmodninger til Flask-serveren for at hente og gengive temperaturen, luftfugtigheden og en visuel repræsentation af temperaturen og fugtigheden af de sidste 24 anmodninger, der er angivet fra formularen på brugerens anmodning. Applikationen bruger en kolbeformular, der har tre boolske inputfelter for hver. Brugeren kan markere et felt for enhver kombination af de tre felter, de vil se. De kan ikke kontrollere andet end ja/nej de vil se disse oplysninger. Vi har lavet en unik html -fil, som vi bruger til at gengive afhængigt af brugerens anmodning. Dette gøres således, at kun de aflæsninger, der viser, er dem, der anmodes om af brugeren. Vi vil ikke have, at brugeren anmoder om temperatur og får dem til at se på en tom skabelon for luftfugtigheden eller en tom graf.

Trin 4: Test

Enheden kører gennem filen: mainsense.py. Hvilket bringer filen i formSense.py, der indeholder vores Flask Form -klasse, der bruges af applikationen. Serveren gengiver i første omgang 'sense.html' og venter derefter på, at brugeren sender en anmodning. mainsense.py venter derefter på at få aflæsninger fra sensoren med et øjebliks varsel, når en GET -anmodning fra applikationen beder om temperatur eller fugtighed og gemmer de tidligere 24 aflæsninger fra brugerne. Der er også en grafmulighed, som brugeren kan vælge, hvilke grafer de tidligere aflæsninger, højst 24, foretaget af brugeren. Du kan også se, at html kun indeholder de formularindstillinger, som brugeren kan bruge til at foretage en anden anmodning og de aflæsninger, der blev anmodet af brugeren.

Du bør derefter kunne navigere til den korrekte URI/IP og indstille den korrekte kommunikationslinje mellem din applikation og server. Du bør prøve at sende nogle test GET -anmodninger og sikre, at sensoren reagerer korrekt med de korrekte aflæsninger fra din sensor. Så hvis dit program sporer vejret korrekt i timen, er vi officielt klar til at slette kabel - det er, hvis du hang på vejrkanalen!

Trin 5: Montering

Montering af enheden er ret selvforklarende. Grundlæggende skal du bare sikre dig, at enheden er sluttet til batteripakken eller en stikkontakt og bruge kommandostrimler til at sikre enheden på din ønskede placering for at overvåge vejret.

Bemærk: Enheden skal placeres med sensoren sikker fra de hårde vejrforhold på din placering. Når dette er fuldført, skal du være i stand til at SSH til enheden og begynde at køre serveren. Åbn webstedet, og ved, at du får de mest opdaterede vejrmålinger fra det sted, din Raspberry Pi -server er blevet placeret.

Anbefalede: