Indholdsfortegnelse:
- Trin 1: Kom godt i gang
- Trin 2: AirVisual API
- Trin 3: Oprindelig tilstand
- Trin 4: Air Quality Dashboard
- Trin 5: Lav et Total Weather Dashboard
![AirVisual Air Quality API Dashboard: 5 trin AirVisual Air Quality API Dashboard: 5 trin](https://i.howwhatproduce.com/images/010/image-27493-j.webp)
Video: AirVisual Air Quality API Dashboard: 5 trin
![Video: AirVisual Air Quality API Dashboard: 5 trin Video: AirVisual Air Quality API Dashboard: 5 trin](https://i.ytimg.com/vi/-7OBhDcZiqQ/hqdefault.jpg)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
![Image Image](https://i.howwhatproduce.com/images/010/image-27493-2-j.webp)
![](https://i.ytimg.com/vi/-7OBhDcZiqQ/hqdefault.jpg)
AirVisual (https://www.airvisual.com) er et websted, der giver data om luftkvalitet rundt om i verden. De har en API, som vi vil bruge til at få luftkvalitetsdata til at sende til et dashboard. Vi vil interagere med denne API på samme måde som vi gjorde med vejrpanelet.
Dette er et simpelt projekt, der lærer dig, hvordan du bruger et API. Lad os komme igang!
Trin 1: Kom godt i gang
![AirVisual API AirVisual API](https://i.howwhatproduce.com/images/010/image-27493-3-j.webp)
Vi har allerede sat det meste af koden sammen, men du skal bruge nogle justeringer undervejs. Der er også masser af muligheder for at udvide det, vi har gjort.
For at hente alle de ting, vi har forberedt til dig, skal du klone depotet fra GitHub. GitHub er en fantastisk service, der giver os mulighed for at gemme, revidere og administrere projekter som dette. Du vil gerne køre dette script på en dedikeret enhed. Du kan bruge en bærbar computer, Raspberry Pi eller en anden enkelt bordcomputer. For at klone depotet er det eneste, vi skal gøre, at gå ind på vores computers eller Pi’s terminal og skrive denne kommando:
$ git -klon
Tryk enter, og du vil se disse oplysninger:
$ git -klon https://github.com/InitialState/airvisual.git Kloning til 'airvisual' … fjernbetjening: Opregning af objekter: 13, udført. fjernbetjening: Optælling af objekter: 100% (13/13), udført. fjernbetjening: Komprimering af objekter: 100% (12/12), udført. fjernbetjening: I alt 13 (delta 2), genbrugt 0 (delta 0), pakke genbrugt 0 Udpakning af objekter: 100% (13/13), udført.
Når du har set dette, så tillykke, du har med succes klonet GitHub Repo og har alle de nødvendige filer til at bygge dette projekt. Lad os gå ind i det nye bibliotek. For at ændre biblioteksværker skal du bare skrive "cd" og derefter skrive navnet på det bibliotek, du vil gå til. I dette tilfælde skriver vi:
$ cd airvisual
Når vi trykker på enter, vil du se, at vi nu er i det airvisuelle bibliotek. Lad os skrive "ls" for at se, hvilke filer vi har installeret. Du skal virke noget som følger:
LICENS README.md airquality.py
Vi har brug for nogle andre elementer, før vi kan redigere koden, så lad os se på Air Quality API næste.
Trin 2: AirVisual API
![AirVisual API AirVisual API](https://i.howwhatproduce.com/images/010/image-27493-4-j.webp)
![AirVisual API AirVisual API](https://i.howwhatproduce.com/images/010/image-27493-5-j.webp)
AirVisual har en luftkvalitet (AQI) og forurenings -API, der tillader op til 10.000 API -opkald om måneden gratis. Du kan tilmelde dig fællesskabsniveau. Når du har tilmeldt dig, kan du gå til My Air og API -fanen. Det er her, du finder dine API -nøgler og dokumentation på API'et.
Klik på knappen +Ny nøgle for at oprette vores første API -adgangsnøgle. For Vælg plan skal du bruge rullemenuen til at vælge Fællesskab og klikke på Opret. Hvis alt går godt, ser du en succesmeddelelse, og du kan gå tilbage til dit API -dashboard for at finde dine nye vigtige oplysninger. Nøgleværdien (tal og tegn) er, hvad du skal bruge til dette projekt. Hvis du læser API -dokumentationen, vil du se, at der er flere slags API -opkald, du kan foretage. Til dette projekt ønsker vi at få de nærmeste bydata baseret på GPS -koordinater. Til dette opkald skal du bruge din længdegrad, breddegrad og API -nøgle. Indtast disse parametre i opkaldet herunder, læg det i en adresselinje i din browser, og tryk på enter.
api.airvisual.com/v2/nestest_city?lat={{LATITUDE}}&lon={{LONGITUDE}}&key={{YOUR_API_KEY}}
Dette vil returnere den nærmeste bys data baseret på GPS -koordinaterne. Det vil se sådan ud:
Jeg anbefaler at bruge en JSON -formatering for at få et bedre overblik over dataene. Hvis du bruger det, ser det lidt sådan ud i stedet:
"status": "succes", "data": {"city": "Nashville", "state": "Tennessee", "country": "USA", "location": {"type": "Point", "koordinater": [-86.7386, 36.1767]}, "current": {"weather": {"ts": "2019-04-08T19: 00: 00.000Z", "_v": 0, "createdAt": "2019-04-08T19: 04: 18.662Z "," hu ": 88," ic ":" 04d "," pr ": 1012," tp ": 18," updatedAt ":" 2019-04-08T19: 46: 53.140Z "," wd ": 90, "ws": 3.1}, "forurening": {"ts": "2019-04-08T18: 00: 00.000Z", "aqius": 10, "mainus": "p2", "aqicn": 3, "maincn": "p2"}
Vi kan let se nu, at vi har oplysninger om placering, vejr og forurening. De to værdier, vi fokuserer på for dette projekt, er luftkvalitetsindekset US (aquis) og Main Pollutant (mainus). Luftkvalitetsindeksværdien fortæller os, hvad den lokale luftkvalitetsværdi er, og hvordan det vedrører dit helbred. Det farvekodede diagram er herunder. Det vigtigste forurenende stof fortæller os, hvad der er det vigtigste forurenende stof i luften for dit område (partikler, nitrogenoxid, ozon, kulilte, svovloxid). Disse forurenende stoffer er typisk biprodukter fra røgstabler eller køretøjsemissioner.
Nu hvor vi ved, hvordan vi bruger Air Visual API, er den næste ting, vi skal bruge, en dashboardplatform til at vise dataene.
Trin 3: Oprindelig tilstand
![Oprindelig tilstand Oprindelig tilstand](https://i.howwhatproduce.com/images/010/image-27493-6-j.webp)
![Oprindelig tilstand Oprindelig tilstand](https://i.howwhatproduce.com/images/010/image-27493-7-j.webp)
Vi vil streame alle vores vejrdata til en skytjeneste og få den service til at gøre vores data til et godt dashboard. Vores data har brug for en destination, så vi vil bruge Initial State som denne destination.
Tilmeld dig den oprindelige statskonto
Gå til https://iot.app.initialstate.com og opret en ny konto.
Installer ISStreamer
Installer Initial State Python -modulet på din bærbare computer eller Raspberry Pi. Kør følgende kommando ved en kommandoprompt:
$ / curl -sSL https://iot.app.initialstate.com -o -| sudo bash
Lav noget Automagic
Når du har kørt curl -kommandoen, vil du se noget, der ligner følgende output til skærmen:
$ / curl -sSL https://iot.app.initialstate.com -o -| sudo bash
Adgangskode: Begyndende ISStreamer Python Nem installation! Dette kan tage et par minutter at installere, få en kop kaffe:) Men glem ikke at komme tilbage, jeg har spørgsmål senere! Fundet easy_install: setuptools 1.1.6 Fundet pip: pip 1.5.6 fra /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip major version: 1 pip mindre version: 5 ISStreamer fundet, opdaterer … Krav allerede opdateret: ISStreamer i /Library/Python/2.7/site-packages Rydder op … Vil du automatisk få et eksempel script? [y/N] Hvor vil du gemme eksemplet? [standard:./is_example.py] Vælg, hvilken starttilstandsapp du bruger: 1. app.initialstate.com 2. [NEW!] iot.app.initialstate.com Indtast valg 1 eller 2: Indtast iot.app.initialstate.com brugernavn: Indtast iot.app.initialstate.com adgangskode:
Når du bliver bedt om automatisk at hente et eksempel script, skal du skrive y. Dette vil oprette et test script, som vi kan køre for at sikre, at vi kan streame data til den oprindelige tilstand. Den næste prompt spørger, hvor du vil gemme eksempelfilen. Du kan enten skrive en tilpasset lokal sti eller trykke på enter for at acceptere standardplaceringen. Endelig bliver du spurgt, hvilken Initial State -app du bruger. Hvis du for nylig har oprettet en konto, skal du vælge indstilling 2 og derefter indtaste brugernavn og adgangskode. Herefter vil installationen være fuldført.
Adgangstaster
Lad os se på eksemplet på script, der blev oprettet. $ nano is_example.py På linje 15 vil du se en linje, der starter med streamer = Streamer (bucket_…. Disse linjer opretter en ny databucket med navnet "Python Stream -eksempel" og er knyttet til din konto. Denne tilknytning sker på grund af access_key =”…” parameter på den samme linje. Den lange række bogstaver og tal er din adgangsnøgle til din initialstatskonto. Hvis du går til din oprindelige statskonto i din webbrowser, skal du klikke på dit brugernavn øverst til højre og derefter gå til til "mine indstillinger", finder du den samme adgangsnøgle nederst på siden under "Streamingadgangsnøgler". Hver gang du opretter en datastrøm, leder denne adgangsnøgle den datastrøm til din konto (så lad være med at del din nøgle med nogen).
Kør eksemplet Kør testscriptet for at sikre, at vi kan oprette en datastrøm til din Initial State -konto. Kør følgende i din kommandoprompt:
$ python er_eksempel.py
Eksempel på data
Gå tilbage til din Initial State -konto i din webbrowser. En ny dataskovl kaldet "Python Stream -eksempel" skulle have vist sig til venstre i din skovlhylde (du skal muligvis opdatere siden). Klik på denne spand for at se dataene.
Du er nu klar til at begynde at streame rigtige data fra AirVisual API.
Trin 4: Air Quality Dashboard
![Air Quality Dashboard Air Quality Dashboard](https://i.howwhatproduce.com/images/010/image-27493-8-j.webp)
![Air Quality Dashboard Air Quality Dashboard](https://i.howwhatproduce.com/images/010/image-27493-9-j.webp)
![Air Quality Dashboard Air Quality Dashboard](https://i.howwhatproduce.com/images/010/image-27493-10-j.webp)
![Air Quality Dashboard Air Quality Dashboard](https://i.howwhatproduce.com/images/010/image-27493-11-j.webp)
Nu til den sjove del. Vi er klar til at begynde at bruge AirVisual API til at oprette et dashboard for luftkvalitet og registrere data om luftforurening, uanset hvor vi vælger. Dette script til airquality.py kalder simpelthen AirVisual API ved hjælp af din API -nøgle og henter de aktuelle luftforureningsoplysninger. Det streamer også disse data til din Initial State -konto, som giver dig mulighed for at oprette et dashboard for luftkvalitet.
Du kan få adgang til scriptet gennem Github -depotet, som vi klonede tidligere. Den første ting, vi skal gøre, er at sikre, at vi er i AirVisual -biblioteket:
$ cd airvisual
Herfra får du adgang til den python -fil, som vi kører for at oprette vores dashboard for luftkvalitet. Vi skal foretage nogle ændringer i filen, før vi kører den. For at åbne python -filen skal du bruge kommandoen nano til at åbne teksteditoren:
$ nano luftkvalitet. py
Når teksteditoren er åben, vil du se følgende nær toppen af dit script:
# --------- Brugerindstillinger ---------
LATITUDE = "LAT" LONGITUDE = "LONG" AIRVISUAL_API_KEY = "AIR VISUAL API KEY" BUCKET_NAME = "Lokal luftkvalitet" BUCKET_KEY = "aq1" ACCESS_KEY = "INITIAL STATE ACCES KEY" MINUTES_BETWE = 5 -------------------------
Du skal indtaste din breddegrad, længdegrad, AirVisual API -nøgle og adgangsnøgle til initial tilstand. Parameteren MINUTES_BETWEEN_READS angiver, hvor ofte dit script vil undersøge AirVisual API for oplysninger om luftkvalitet. 5 minutter nok tid, så du ikke overskrider din grænse på 10.000 API -opkald pr. Måned. Af hensyn til kortsigtet test kan du indstille dette til 0,5 minutter. Når du har indtastet dine parametre, skal du gemme og afslutte indtastningen af teksten ved at skrive Control+X. Nu er du klar til at køre dit script:
$ python airquality.py
Hvis du vil lade dette script køre uafbrudt i lang tid, kan du bruge nohup-kommandoen (ingen afbrydelse) som følger:
$ nohup python airquality.py &
Når dette kører, skal du gå til Initial State for at se dine data. Dit instrumentbræt skal ligne billedet herunder. Du har din GPS -placering, din luftkvalitetsindeksværdi og dit vigtigste forurenende stof.
Min anbefaling er at ændre din AQI -værdi til en måleflise. Flyt også fliserne rundt, og tilpas størrelsen efter behov. Hvis du bruger dette til et integreret instrumentbræt, kan du flytte dem rundt, så de passer efter behov.
Hvis du beslutter dig for at gøre din AQI -værdi til en måler, kan du derefter indstille farvetærsklen til at ligne luftkvalitetsindeksdiagrammet. Dette giver dig en øjeblikkelig opdatering af, hvor AQI -værdien falder på diagrammet, når du tjekker dit dashboard. Du kan tilføje et baggrundsbillede til dit dashboard for at give det mere kontekst.
Så du har alt, hvad du har brug for for at oprette et dashboard til luftkvalitet. Men hvad nu hvis du vil tilføje mere eller tilføje dette til et vejrdashboard, du allerede har oprettet? Hvis det er tilfældet, så fortsæt med at læse!
Trin 5: Lav et Total Weather Dashboard
![Lav et Total Weather Dashboard Lav et Total Weather Dashboard](https://i.howwhatproduce.com/images/010/image-27493-12-j.webp)
Er luftkvalitetsdata bare ikke nok for dig? Der er masser af muligheder for at tilføje mere til dit dashboard eller streame disse data til et vejr -dashboard, du allerede har!
Stream vejr og luftkvalitet til et enkelt instrumentbræt
Hvis du allerede har implementeret vores DarkSky API eller Hyper-Local Weather Dashboard-projekt, kan du tilføje disse luftkvalitetsdata til dit eksisterende dashboard. Det er ret simpelt, alt hvad du skal gøre er at ændre dine parametre i luftkvalitetsskriptet for at have det samme skovlnavn, skovlnøgle og adgangsnøgle som det, du brugte til dit vejrdashboard. Dette gør det muligt for dataene at blive sendt til det samme dashboard. Nu har du et samlet vejrdashboard!
Få din Weather Python -fil til at ringe til at køre Python -filen med luftkvalitet
En anden mulighed, hvis du ikke vil køre to separate programmer, er at lægge luftkvalitets python -filen i vejrprojektmappen. Få vejrprojektets python -fil til at ringe til luftkvalitetsfilen, så den kører, når din vejrfil kører. Igen skal du sørge for at angive det samme skovnnavn, bucket -nøgle og adgangsnøgle, så de kører til det samme dashboard.
Opret en enkelt fil med både vejr og luftkvalitet
Og hvis du føler dig rigtig fed, kan du sætte noget af luftkvalitetskoden i dit vejrpython -script og bare have et enkelt script til at køre. Det vil kræve lidt mere kodningsindsats end de to andre muligheder, men det giver et forenklet program.
Stream yderligere oplysninger fra AirVisual API
Som du så, da vi ringede til AirVisual API, har den flere oplysninger end blot luftkvalitet. Det giver også temperatur, fugtighed, vindhastighed, vindretning og atmosfærisk tryk. Vi kan sende disse oplysninger til den oprindelige tilstand på samme måde, som vi sendte værdien for luftkvalitetsindeks og hovedforurenende stof. Det kræver kun, at du skriver et par flere if -udsagn.
Anbefalede:
Air - True Mobile Air Guitar (prototype): 7 trin (med billeder)
![Air - True Mobile Air Guitar (prototype): 7 trin (med billeder) Air - True Mobile Air Guitar (prototype): 7 trin (med billeder)](https://i.howwhatproduce.com/images/001/image-728-j.webp)
Air - True Mobile Air Guitar (Prototype): Okay, så det bliver en rigtig kort instruktion om den første del af endelig at komme tættere på min barndomsdrøm. Da jeg var en ung dreng, så jeg altid mine yndlingsartister og bands spille guitar perfekt. Da jeg voksede op, var jeg t
PurpleAir Air Quality Status LED Display: 4 trin
![PurpleAir Air Quality Status LED Display: 4 trin PurpleAir Air Quality Status LED Display: 4 trin](https://i.howwhatproduce.com/images/001/image-2088-27-j.webp)
PurpleAir Air Quality Status LED Display: Med de seneste skovbrande i Californien har luftkvaliteten i San Francisco været stærkt påvirket. Vi fandt os selv til at kontrollere PurpleAir -kortet igen og igen på vores telefoner eller bærbare computere, der prøvede at se, hvornår luften var sikker nok til at åbne gevinsten
Byg et vejr -dashboard ved hjælp af Dark Sky API: 5 trin (med billeder)
![Byg et vejr -dashboard ved hjælp af Dark Sky API: 5 trin (med billeder) Byg et vejr -dashboard ved hjælp af Dark Sky API: 5 trin (med billeder)](https://i.howwhatproduce.com/images/002/image-3193-32-j.webp)
Byg et vejrpanel ved hjælp af 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
Dark Sky API PyPortal & Weather Dashboard: 6 trin
![Dark Sky API PyPortal & Weather Dashboard: 6 trin Dark Sky API PyPortal & Weather Dashboard: 6 trin](https://i.howwhatproduce.com/images/002/image-3701-29-j.webp)
Dark Sky API PyPortal & Weather Dashboard: 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
SINT HAT FOR RASPBERRY PI AIR QUALITY & GAS DETECTOR V1.1: 9 trin
![SINT HAT FOR RASPBERRY PI AIR QUALITY & GAS DETECTOR V1.1: 9 trin SINT HAT FOR RASPBERRY PI AIR QUALITY & GAS DETECTOR V1.1: 9 trin](https://i.howwhatproduce.com/images/003/image-6812-45-j.webp)
SENST HAT FOR RASPBERRY PI AIR QUALITY & GAS DETECTOR V1.1: Sensly er en bærbar forureningssensor, der er i stand til at registrere forureningsniveauerne i luften ved hjælp af sine indbyggede gassensorer til at indsamle oplysninger om de forskellige gasser, der er til stede. Disse oplysninger kan fodres direkte til din smartphone til real-time