Innholdsfortegnelse:

Personlig meteorolog: 5 trinn
Personlig meteorolog: 5 trinn

Video: Personlig meteorolog: 5 trinn

Video: Personlig meteorolog: 5 trinn
Video: НЕ ВЫБРОСИЛА СТАРЫЙ ТЮЛЬ И ХОРОШО СЭКОНОМИЛА СЕМЕЙНЫЙ БЮДЖЕТ! 4 КРУТЫЕ ИДЕИ ИЗ ТЮЛЯ! 2024, November
Anonim
Personlig meteorolog
Personlig meteorolog

Har du noen gang lurt på om eller når meteorologen din snakker sant? Vil du ha en diskret, billig og rask måte å være din egen meteorolog … og kanskje et lite prosjekt? Ser ikke lenger! Denne forenklede enheten vil spore værforholdene fra hvilket som helst sted du ønsker og gi deg muligheten til å overvåke været med et tastetrykk.

Dette prosjektet gir deg litt øvelse med Flask, Raspberry Pis, GPIO -sensorer og HTML! Ikke bare er det morsomt å bygge, men det har mye nytte. Meteorologen din kan bare være uten jobb …

Rekvisita

  • Raspberry Pi 3
  • Micro SD -kort
  • 1 massetråd
  • 4 mannlige til mannlige ledninger
  • 1 DHT11 -sensor
  • 1 batteri

Hvis du planlegger å være din egen pålitelige meteorolog for flere steder, multipliserer du hver av rekvisita med hvor mange enheter du trenger. Koden for å støtte flere enheter vil imidlertid variere. Hvis du er i ferd med å bygge/teste denne enheten, er det ikke nødvendig å ha følgende … men det vil definitivt være veldig nyttig.

  • En dataskjerm
  • Et USB -tastatur
  • Micro USB ladesett

Trinn 1: Kabling

Kabling
Kabling
Kabling
Kabling

Ved å bruke Raspberry Pi, må vi integrere hovedsensoren i Raspberry Pi -strømkilden, slik at den kan gjøre de målingene vi trenger. Hovedsensoren som ble brukt i dette prosjektet, avbildet ovenfor, registrerer temperaturen og fuktigheten i det fysiske miljøet rundt. Du kan bruke et brødbrett eller en annen monteringsenhet til å plassere denne sensoren og kjøre ledningene våre gjennom eller bare koble den via hunn-til-hunn-ledninger direkte til pinnene på Raspberry Pi-enheten.

Følg ledningsskjemaet som er vist ovenfor for å koble sensoren på riktig måte til Raspberry Pi. Vær oppmerksom på at en strømkilde er nødvendig, en batteripakke eller i nærheten av en stikkontakt.

Trinn 2: Konfigurer

Gratulerer, maskinvaren din er montert!

Vi skal nå begynne å jobbe direkte med Raspberry Pi og programvaren til prosjektet. Alt det følgende kan gjøres på Raspberry Pi med et tastatur og en skjerm eller via SSH. Følgende biblioteker er nødvendige for å sikre at all programvare kan kjøres på Raspberry Pi. Bruk kommandoen "pip install" for å la programvaren senere bruke følgende biblioteker:

  • forespørsler
  • RPi. GPIO
  • kolbe
  • flask_restful
  • flask_wtf
  • wtforms

Vær oppmerksom på at været kan endre seg noen ganger mens disse bibliotekene er installert … vær tålmodig, du er så nær å låse opp dine meteorologiske evner!

Nå som du har installert alle bibliotekene dine, la oss bli kjent med Flask, et lett rammeverk som gir enkel kommunikasjon mellom noder i prosjektets miljø. I dette prosjektet blir Raspberry Pi en server. Du kan bli komfortabel med Flask med det enkle applikasjonseksemplet her.

Trinn 3: Kode og kjøring

Nå som du har samlet maskinvare- og programvarebibliotekene, er du klar til å begynne å konstruere prosjektfilene.

Server: I dette prosjektet fungerer Raspberry Pi som er koblet til sensoren som server. Serveren venter på at brukeren skal fullføre en forespørsel om temperatur, fuktighet og eller grafen. Vi opprettet HTML -maler som er konfigurert til å samhandle riktig med applikasjonens forespørsel om temperatur, fuktighet, graf eller en hvilken som helst kombinasjon av de tre (se malmappen). Det betyr at hvis brukeren bare vil ha temperatur, vil han ikke se noe om fuktighet annet enn skjemaalternativet for å få en fuktighetsavlesning. Når et innlegg er laget, samler serveren informasjonen fra innlegget og utfører handlingen brukeren ba om. DHT -sensoren får avlesningene som deretter lagres og sendes inn som et ordbokargument med det nye HTML -skjemaet vi gjengir. Serveren lagrer også disse avlesningene for å lage en graf over tidligere avlesninger når brukeren ber om det.

Søknad: Programmet sender HTTP-forespørsler til Flask-serveren for å hente og gjengi temperatur, fuktighet og en visuell fremstilling av temperaturen og fuktigheten til de siste tjuefire forespørslene som ble satt fra skjemaet på brukerens forespørsel. Programmet bruker et kolbe -skjema som har tre boolske inndatafelt for hvert. Brukeren kan merke av i en boks for en hvilken som helst kombinasjon av de tre feltene de vil se. De kan ikke kontrollere noe annet enn ja/nei de vil se den informasjonen. Vi har laget en unik html -fil som vi bruker til å gjengi avhengig av brukerens forespørsel. Dette gjøres slik at bare avlesningene som viser er de som brukeren ber om. Vi vil ikke at brukeren skal be om temperatur og la dem se på en tom mal for fuktighet eller en tom graf.

Trinn 4: Testing

Enheten kjører gjennom filen: mainsense.py. Som bringer inn filen med formSense.py som inneholder vår Flask Form -klasse som brukes av programmet. Serveren gjengir først 'sense.html' og venter deretter på at brukeren skal komme med en forespørsel. mainsense.py venter deretter på å få avlesninger fra sensoren på et øyeblikk når en GET -forespørsel fra applikasjonen ber om temperatur eller fuktighet og lagre de tidligere 24 avlesningene fra brukerne. Det er også et grafalternativ som brukeren kan velge hvilke grafer de forrige avlesningene, høyst 24, gjort av brukeren. Du kan også se at html bare inneholder skjemalternativene som brukeren kan bruke til å gjøre en annen forespørsel og lesningene som ble bedt om av brukeren.

Du bør da kunne navigere til riktig URI/IP og angi riktig kommunikasjonslinje mellom applikasjonen og serveren. Du bør prøve å sende noen test GET -forespørsler og sikre at sensoren reagerer riktig med riktige avlesninger fra sensoren din. Hvis programmet ditt sporer været på timen på riktig måte, er vi offisielt klare til å slette kabelen - det vil si hvis du hang på værkanalen!

Trinn 5: Montering

Montering av enheten er ganske selvforklarende. I utgangspunktet må du bare sørge for at enheten er koblet til batteripakken eller en stikkontakt og bruke kommandostrimler for å sikre enheten på ønsket sted for å overvåke været.

Merk: Enheten må plasseres med sensoren trygg fra de harde værforholdene du befinner deg i. Når dette er fullført, bør du kunne SSH inn i enheten og begynne å kjøre serveren. Åpne nettstedet og vet at du får de mest oppdaterte værmålingene fra stedet der Raspberry Pi -serveren din er plassert.

Anbefalt: