Indholdsfortegnelse:

Dark Sky API PyPortal & Weather Dashboard: 6 trin
Dark Sky API PyPortal & Weather Dashboard: 6 trin

Video: Dark Sky API PyPortal & Weather Dashboard: 6 trin

Video: Dark Sky API PyPortal & Weather Dashboard: 6 trin
Video: What's New in ENVI 5.3 | Webinar 2024, Juli
Anonim
Image
Image

Dette projekt er en opfattelse af et, vi har gjort før, Dark Sky API Weather Dashboard. Denne gang i stedet for en Raspberry Pi bruger vi en Adafruit PyPortal til at vise vejrdata og sende disse data til den oprindelige tilstand. To dashboards til arbejdet med et!

Forbrugsvarer

  • Adafruit PyPortal
  • Adafruit IO -konto (gratis)
  • Dark Sky API -konto (gratis)
  • Oprindelig statskonto

Trin 1: Oprindelig tilstand

Oprindelig tilstand
Oprindelig tilstand

Initial State er en datavisualiseringsplatform. Vi sender data fra Dark Sky API og PyPortal til Initial State. Dette giver os mulighed for at have en log over vejrdata og se vejrtrends.

Du skal registrere og oprette en ny konto. Du får en 14 dages gratis prøveperiode, og alle med en edu -e -mail -adresse kan registrere sig til en gratis studenterplan.

Du skal bruge din adgangsnøgle til initial tilstand for at kunne sende data fra Dark Sky API og PyPortal til initial tilstand. Rul over dit brugernavn øverst til højre, og klik på mine indstillinger. Der vil du se en liste over Streaming Access Keys. Vælg en, der skal bruges, eller opret en ny. Vi får brug for dette senere for koden.

Trin 2: Dark Sky API

Dark Sky API
Dark Sky API

Dark Sky har specialiseret sig i vejrudsigter og visualisering. Det sejeste aspekt ved Dark Sky er deres vejr -API, som vi kan bruge til at hente vejrdata fra næsten overalt i verden. Det er ikke kun vejret, der er regnfuldt eller solrigt, men temperatur, dugpunkt, vindstød, fugtighed, nedbør, tryk, UV -indeks og mere, alt let tilgængeligt, uanset hvor du vil, når du vil.

For at bruge Dark Sky API skal du først bruge din egen API -nøgle. Bare rolig, det er hurtigt og gratis at få en API -nøgle. Alt du skal gøre er at gå til webstedet og klikke på "Prøv gratis" for at oprette en konto.

Du får 1.000 API -opkald gratis hver dag. Hver API -anmodning over den gratis daglige grænse koster $ 0.0001. Denne grænse nulstilles automatisk hver dag ved midnat UTC. Forespørgselsanmodningen returnerer den aktuelle vejrudsigt for den næste uge. Time Machine Request returnerer de observerede eller vejrudsigter for en dato i fortid eller fremtid.

Din hemmelige Dark Sky API -nøgle vil se sådan ud:

0123456789abcdef9876543210fedcba.

Vi vil bruge dette senere i koden.

Trin 3: Adafruit IO & PyPortal

Adafruit IO er en service Adafruit tilbyder at supplere deres hardware. Vi vil bruge denne service til urdelen af vores kode. Tilmeld dig en gratis konto. Klik på Vis AIO -nøglen til venstre for at se dit brugernavn og din nøgle. Vi vil bruge begge disse senere i vores kode senere.

Adafruit PyPortal er den nyeste IoT -enhed drevet af Circuit Python. Det fede ved PyPortal er, at du kan interagere med API’er og JSON’er for at vise næsten alt. Vi vil bruge det til at hente data fra Dark Sky API, vise disse data på PyPortal og sende disse data til Initial State.

Hvis dette er dit første projekt på din PyPortal, vil du følge denne vejledning for at downloade firmwaren, tilslutte din PyPortal til WiFi og gøre den klar. Når du har gennemført dette, er vi klar til Dark Sky API -koden.

Trin 4: Kode

Denne kode kan downloades til din computer her. Overfør alle filerne undtagen README.md -filen til din PyPortal. Du skal bare trække og slippe dem på PyPortal, som skal vises som CIRCUITPYTHON på din USB -liste. Det eneste dokument, du skal redigere, er secrets.py. Det vil trække alle dine private oplysninger ind i koden, så vi ikke har det for øjnene.

Jeg vil anbefale at bruge Mu Editor til at redigere og se din kode. Den har en seriel skærm til nem fejlfinding, mens du foretager ændringer. Enhver kodeditor fungerer dog.

Jeg vil tale om, hvad hvert stykke kode, biblioteker og mapper gør, så det er lettere at foretage ændringer og

kode.py

Dette er vores hovedfil, der starter på PyPortal, da den hedder code.py. Her ser du WiFi -forbindelsen, Dark Sky API -opkaldet og opsætningen til PyPortal -skærmen. Der er ingen ændringer, du skal foretage i denne fil.

darksky.py

Dette script kaldes fra hovedkoden. Det er her, vi analyserer Dark Sky API -opkaldet, konfigurerer tekstplacering på PyPortal -skærmen, bestemmer hvilket ikon, der skal vises, og sender API -dataene til den oprindelige tilstand. Der er ingen ændringer, du skal foretage her.

secrets.py

Dette gemmer alle dine adgangskoder og adgangsnøgler. Du skal opdatere næsten alle elementer i dette dokument. Du skal indtaste dit WiFi -navn, WiFi -adgangskode, tidszone, Dark Sky API -nøgle, Initial State -adgangsnøgle, længdegrad og breddegrad, bynavn og -stat, Adafruit IO -brugernavn og Adafruit IO -nøgle. Når du har alle dem indtastet og gemt, skal din kode køre uden fejl.

biblioteker

Dette er de biblioteker, der kræves for at køre PyPortal og moduler.

skrifttyper

Dette er den skrifttype, der bruges til at vise vejrinformationen på PyPortal.

ikoner

Dette er de forskellige ikoner, der vises som billedet på PyPortal baseret på de aktuelle vejrforhold.

Trin 5: PyPortal

PyPortal
PyPortal

Nu hvor din kode kører, viser din PyPortal din by og tilstand, tidspunktet, den aktuelle vejrsoversigt og ikon, der skal matche, og temperaturen i Fahrenheit.

Du kan justere størrelsen og placeringen af den tekst, der vises i Dark Sky -scriptet. Hvis du vil bruge forskellige ikoner, skal du bare gemme dem som de korrekte navne og lægge dem i mappen Ikoner. Alle displayelementer er justerbare. Du kan endda ændre, hvad du viser. Alt du skal gøre er at analysere en anden del af Dark Sky API -opkaldet, og det vil blive vist i stedet for temperatur eller vejroversigt.

Trin 6: Initial State Dashboard

Initial State Dashboard
Initial State Dashboard

Gå til din oprindelige statskonto og se på dine data. Jeg kortlagde temperatur- og vejrikonet til emojis, lavede temperaturværdien til en termometermålergraf, lavede fugtighed til en væskestandsmålergraf, lavede UV -indekset til et søjlediagram med farvetærskler og oprettede linjediagrammer over fugtighed, temperatur og UV -indeks. '

Du kan tilføje et baggrundsbillede til dit vejrdashboard for at give dig dashboard mere personlighed.

Hvis du vil bruge dashboardlayoutet fra en offentlig deling som dit dashboard, kan du importere et layout til din data bucket ved at følge instruktionerne her.

Den offentlige delings -URL til vores dashboard er

Nu har du ikke kun et, men to vejrdashboards og en log med vejrdata.

Anbefalede: