Sisällysluettelo:

AirVisual Air Quality API -koontinäyttö: 5 vaihetta
AirVisual Air Quality API -koontinäyttö: 5 vaihetta

Video: AirVisual Air Quality API -koontinäyttö: 5 vaihetta

Video: AirVisual Air Quality API -koontinäyttö: 5 vaihetta
Video: IQAir AirVisual Pro RETURNED // Not Accurate? // Horrible Customer Service // Micro USB in 2023 😹👎🏻 2024, Marraskuu
Anonim
Image
Image

AirVisual (https://www.airvisual.com) on verkkosivusto, joka tarjoaa tietoja ilmanlaadusta ympäri maailmaa. Heillä on sovellusliittymä, jota käytämme ilmanlaadun tietojen saamiseksi kojelautaan. Toimimme tämän sovellusliittymän kanssa samalla tavalla kuin säähallintapaneelin kanssa.

Tämä on yksinkertainen projekti, joka opettaa sinulle sovellusliittymän käytön. Aloitetaan!

Vaihe 1: Aloittaminen

AirVisual -sovellusliittymä
AirVisual -sovellusliittymä

Olemme jo koonneet suurimman osan koodista yhteen, mutta sinun on tehtävä muutamia muutoksia matkan varrella. Meillä on myös paljon mahdollisuuksia laajentaa tekemäämme työtä.

Jotta voit hakea kaikki sinulle valmistamamme asiat, sinun on kloonattava arkisto GitHubista. GitHub on mahtava palvelu, jonka avulla voimme tallentaa, tarkistaa ja hallita tällaisia projekteja. Haluat suorittaa tämän komentosarjan erillisellä laitteella. Voit käyttää kannettavaa tietokonetta, Raspberry Pi -laitetta tai muuta yhden kortin tietokonetta. Jos haluat kloonata arkiston, meidän tarvitsee vain mennä tietokoneemme tai Pi: n päätelaitteeseen ja kirjoittaa tämä komento:

$ git klooni

Paina Enter ja näet nämä tiedot:

$ git -klooni https://github.com/InitialState/airvisual.git Kloonaus "airvisual"… kauko -ohjain: Objektien luetteleminen: 13, valmis. kauko: Objektien laskeminen: 100% (13/13), valmis. kaukosäädin: Objektien pakkaaminen: 100% (12/12), valmis. kauko: Yhteensä 13 (delta 2), uudelleenkäytetty 0 (delta 0), pakkaus uudelleenkäytetty 0 Objektien purkaminen pakkauksesta: 100% (13/13), valmis.

Kun näet tämän, onnittelut, olet kloonannut onnistuneesti GitHub Repon ja sinulla on kaikki tarvittavat tiedostot tämän projektin rakentamiseksi. Siirrytään uuteen hakemistoon. Jos haluat vaihtaa hakemiston, sinun tarvitsee vain kirjoittaa "cd" ja sitten sen hakemiston nimi, johon haluat mennä. Tässä tapauksessa kirjoitamme:

$ cd airvisual

Kun painamme Enter -näppäintä, näet, että olemme nyt ilmailutiedostossa. Kirjoita "ls" nähdäksesi, mitkä tiedostot olemme asentaneet. Sinun pitäisi näyttää jotain tältä:

LISENSSI README.md airquality.py

Tarvitsemme muita kohteita, ennen kuin voimme muokata koodia, joten katsotaan seuraavaksi Air Quality API.

Vaihe 2: AirVisual -sovellusliittymä

AirVisual -sovellusliittymä
AirVisual -sovellusliittymä
AirVisual -sovellusliittymä
AirVisual -sovellusliittymä

AirVisualilla on ilmanlaatu (AQI) ja saastumisrajapinta, joka mahdollistaa jopa 10 000 sovellusliittymäpuhelua kuukaudessa ilmaiseksi. Voit rekisteröityä yhteisön tasolle. Kun olet rekisteröitynyt, voit siirtyä My Airiin ja sovellusliittymävälilehdelle. Täältä löydät sovellusliittymän avaimet ja asiakirjat.

Luo ensimmäinen sovellusliittymän käyttöavain napsauttamalla +Uusi avain -painiketta. Valitse Valitse suunnitelma -kohdassa avattavasta valikosta Yhteisö ja napsauta Luo. Jos kaikki menee hyvin, näet onnistumisviestin ja voit palata sovellusliittymän hallintapaneeliin etsimään uudet avaintietosi. Avainarvo (numerot ja merkit) on mitä tarvitset tähän projektiin. Jos tutustut API -dokumentaatioon, näet, että voit soittaa monenlaisia API -puheluita. Tätä projektia varten haluamme saada lähimmät kaupunkitiedot GPS -koordinaattien perusteella. Tätä puhelua varten tarvitset pituus-, leveys- ja sovellusliittymäavaimesi. Kirjoita nämä parametrit alla olevaan puheluun, laita se selaimesi osoiteriville ja paina enter.

api.airvisual.com/v2/nearest_city?lat={{LATITUDE}}&lon={{LONGITUDE}}&key={{YOUR_API_KEY}}

Tämä palauttaa lähimmän kaupungin tiedot GPS -koordinaattien perusteella. Se näyttää tältä:

Suosittelen käyttämään JSON -muotoilua, jotta saat paremman kuvan tiedoista. Jos käytät sitä, se näyttää hieman tältä:

"status": "menestys", "data": {"kaupunki": "Nashville", "osavaltio": "Tennessee", "maa": "USA", "sijainti": {"type": "Piste", "koordinaatit": [-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}, "saastuminen": {"ts": "2019-04-08T18: 00: 00.000Z", "aqius": 10, "mainus": "p2", "aqicn": 3, "maincn": "p2"}

Voimme helposti nähdä nyt, että meillä on tietoa sijainnista, säästä ja saastumisesta. Kaksi arvoa, joihin keskitymme tässä hankkeessa, ovat Yhdysvaltojen ilmanlaatuindeksi (aquis) ja pääsaaste (mainus). Ilmanlaatuindeksin arvo kertoo meille, mikä on paikallinen ilmanlaatuarvo ja miten se liittyy terveyteesi. Värikoodattu kaavio on alla. Tärkein epäpuhtaus kertoo meille, mikä on tärkein ilmansaaste alueellesi (hiukkaset, typpioksidi, otsoni, hiilimonoksidi, rikkioksidi). Nämä epäpuhtaudet ovat tyypillisesti savupinojen tai ajoneuvojen päästöjen sivutuotteita.

Nyt kun osaamme käyttää Air Visual -sovellusliittymää, seuraavaksi tarvitsemme kojelaudan alustan tietojen näyttämiseksi.

Vaihe 3: Alkutila

Alkuperäinen tila
Alkuperäinen tila
Alkuperäinen tila
Alkuperäinen tila

Haluamme suoratoistaa kaikki säätiedot pilvipalveluun ja saada tämän palvelun muuttamaan tietomme mukavaksi kojelautaksi. Datamme tarvitsevat määränpään, joten käytämme alkuperäistä tilaa kohteena.

Rekisteröi alkuperäisen valtion tili

Siirry osoitteeseen https://iot.app.initialstate.com ja luo uusi tili.

Asenna ISStreamer

Asenna Initial State Python -moduuli kannettavaan tietokoneeseen tai Raspberry Pi -laitteeseen. Suorita seuraava komento komentokehotteessa:

$ / curl -sSL https://iot.app.initialstate.com -o -| sudo bash

Tee Automagic

Kun olet suorittanut curl -komennon, näet jotain seuraavan kaltaista tulosta näytölle:

$ / curl -sSL https://iot.app.initialstate.com -o -| sudo bash

Salasana: ISStreamer Python Helppo asennus! Asentaminen voi kestää muutaman minuutin, nappaa kahvia:) Mutta älä unohda palata, minulla on kysymyksiä myöhemmin! Löytyi easy_install: setuptools 1.1.6 Löytyi pip: pip 1.5.6 /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip pääversio: 1 pip vähäinen versio: 5 ISStreamer löytyi, päivitetään… Vaatimus on jo ajan tasalla: ISStreamer /Library/Python/2.7/site-packages Siivotaan… Haluatko automaattisesti saada esimerkkikomentosarjan? [y/N] Minne haluat tallentaa esimerkin? [oletus:./is_example.py] Valitse alkuperäinen tila, jota käytät: 1. app.initialstate.com 2. [UUSI!] iot.app.initialstate.com Anna vaihtoehto 1 tai 2: Kirjoita iot.app.initialstate.com -käyttäjänimi: Anna iot.app.initialstate.com -salasana:

Kun sinua kehotetaan hakemaan automaattisesti esimerkkikomentosarja, kirjoita y. Tämä luo testikomentosarjan, jonka voimme suorittaa varmistaaksemme, että voimme suoratoistaa tietoja alkuperäiseen tilaan. Seuraava kehote kysyy minne haluat tallentaa esimerkkitiedoston. Voit joko kirjoittaa mukautetun paikallisen polun tai painaa Enter hyväksyäksesi oletussijainnin. Lopuksi sinulta kysytään, mitä alkuperäisen valtion sovellusta käytät. Jos olet äskettäin luonut tilin, valitse vaihtoehto 2 ja anna sitten käyttäjänimi ja salasana. Tämän jälkeen asennus on valmis.

Pääsyavaimet

Katsotaanpa esimerkkiä, joka luotiin. $ nano is_example.py Rivillä 15 näet rivin, joka alkaa streamer = Streamer (bucket_…. Tämä rivi luo uuden tietoryhmän nimeltä Python Stream Example ja liittyy tiliisi. Tämä yhteys johtuu access_key =”…” -parametri samalla rivillä. Tämä pitkä kirjainten ja numeroiden sarja on alkuperäisen valtion tilin käyttöavain. Jos siirryt alkuperäisen valtion tilillesi verkkoselaimessasi, napsauta oikeassa yläkulmassa olevaa käyttäjänimeäsi ja siirry "omat asetukset" -kohtaan, löydät saman käyttöavaimen sivun alareunasta "Streaming Access Keys" -kohdasta. Joka kerta, kun luot tietovirran, kyseinen avain ohjaa datavirran tilillesi (joten älä jaa avaimesi kenenkään kanssa).

Suorita esimerkki Suorita testikomentosarja varmistaaksesi, että voimme luoda tietovirran alkuperäiseen tilillesi. Suorita seuraava komentokehotteessa:

$ python on_esimerkki.py

Esimerkkitiedot

Palaa alkuperäisen valtion tilillesi verkkoselaimellasi. Python Stream -esimerkiksi kutsutun uuden tietoryhmän olisi pitänyt näkyä hyllysi vasemmalla puolella (sinun on ehkä päivitettävä sivu). Voit tarkastella tietoja napsauttamalla tätä ryhmää.

Olet nyt valmis aloittamaan todellisten tietojen suoratoiston AirVisual -sovellusliittymästä.

Vaihe 4: Ilmanlaadun kojelauta

Ilmanlaadun kojelauta
Ilmanlaadun kojelauta
Ilmanlaadun kojelauta
Ilmanlaadun kojelauta
Ilmanlaadun kojelauta
Ilmanlaadun kojelauta
Ilmanlaadun kojelauta
Ilmanlaadun kojelauta

Nyt hauska osa. Olemme valmiita käyttämään AirVisual -sovellusliittymää luomaan ilmanlaadun kojelauta ja keräämään ilmansaasteiden tiedot missä tahansa. Tämä airquality.py -skripti yksinkertaisesti kutsuu AirVisual -sovellusliittymän API -avaimesi avulla ja hakee nykyiset ilmansaasteiden tiedot. Se myös välittää nämä tiedot alkuperäisen valtion tilillesi, jolloin voit luoda ilmanlaadun hallintapaneelin.

Voit käyttää komentosarjaa aiemmin kloonaamamme Github -arkiston kautta. Ensimmäinen asia, joka meidän on tehtävä, on varmistaa, että olemme AirVisual -hakemistossa:

$ cd airvisual

Täältä voit käyttää python -tiedostoa, jonka suoritamme ilmanlaadun hallintapaneelin luomiseksi. Meidän on tehtävä joitain muutoksia tiedostoon ennen sen suorittamista. Voit avata python -tiedoston avaamalla tekstieditorin nano -komennolla:

$ nano airquality.py

Kun tekstieditori on auki, näet seuraavan skriptisi yläosassa:

# --------- Käyttäjäasetukset ---------

LATITUDE = "LAT" LONGITUDE = "LONG" AIRVISUAL_API_KEY = "AIR VISUAL API KEY" BUCKET_NAME = "Paikallinen ilmanlaatu" BUCKET_KEY = "aq1" ACCESS_KEY = "ALKUPERÄISEN TILANNEEN AVAIN" MINUTES_BETWE -------------------------

Sinun on annettava leveys-, pituusaste, AirVisual -sovellusliittymäavain ja alkutilan käyttöavain. MINUTES_BETWEEN_READS -parametri määrittää, kuinka usein skriptisi kyselee AirVisual -sovellusliittymästä ilmanlaatutietoja. 5 minuuttia tarpeeksi aikaa, jotta et ylitä 10 000 sovellusliittymän puhelurajoitusta kuukaudessa. Lyhytaikaisen testauksen vuoksi voit asettaa tämän 0,5 minuutiksi. Kun olet syöttänyt parametrit, tallenna ja poistu kirjoittamasta tekstistä kirjoittamalla Control+X. Nyt olet valmis suorittamaan komentosarjasi:

$ python airquality.py

Jos haluat jättää tämän komentosarjan keskeytymättömäksi pitkäksi aikaa, voit käyttää nohup-komentoa (ei katkaisua) seuraavasti:

$ nohup python airquality.py &

Kun tämä on käynnissä, siirry alkuperäiseen tilaan nähdäksesi tietosi. Kojelaudan pitäisi näyttää seuraavan kuvan kaltaiselta. Sinulla on GPS -sijaintisi, ilmanlaatuindeksiarvo ja pääsaaste.

Suositukseni olisi muuttaa AQI -arvo mittarilevyksi. Siirrä myös laattoja ympäri ja muuta niiden kokoa tarpeen mukaan. Jos käytät tätä sulautetussa kojelaudassa, voit siirtää niitä tarpeen mukaan.

Jos päätät tehdä AQI -arvosta mittarin, voit asettaa värikynnyksen vastaamaan ilmanlaatua. Tämä antaa sinulle välittömän päivityksen siitä, missä AQI -arvo laskee kaavioon, kun tarkistat kojelaudasi. Voit lisätä taustakuvan koontinäyttöön, jolloin se antaa enemmän kontekstia.

Joten sinulla on kaikki mitä tarvitset ilmanlaadun kojelaudan luomiseen. Mutta entä jos haluat lisätä tai lisätä tämän jo luomaasi säähallintapaneeliin? Jos näin on, jatka lukemista!

Vaihe 5: Tee Total Weather -hallintapaneeli

Tee Total Weather -hallintapaneeli
Tee Total Weather -hallintapaneeli

Eikö ilmanlaatutiedot riitä sinulle? On siis paljon vaihtoehtoja lisätä lisää kojelautaan tai suoratoistaa nämä tiedot jo olemassa olevaan säähallintapaneeliin!

Stream Sää ja ilmanlaatu yhdelle kojelaudalle

Jos olet jo ottanut käyttöön DarkSky-sovellusliittymän tai Hyper-Local Weather Dashboard -projektimme, voit lisätä nämä ilmanlaatutiedot olemassa olevaan kojelautaan. Se on melko yksinkertaista, sinun tarvitsee vain muuttaa parametreja ilmanlaatukomentosarjassa niin, että niillä on sama kauhan nimi, kauhan avain ja käyttöavain kuin mitä käytit säähallintapaneelissasi. Tämä mahdollistaa tietojen lähettämisen samaan kojelautaan. Nyt sinulla on täydellinen säähallintapaneeli!

Pyydä Weather Python -tiedostoa soittamaan ilmanlaadun Python -tiedosto

Toinen vaihtoehto, jos et halua käyttää kahta erillistä ohjelmaa, on sijoittaa ilmanlaadun python -tiedosto sääprojektihakemistoon. Pyydä sääprojektin python -tiedostoa soittamaan ilmanlaatutiedostoon, jotta se toimii, kun säätiedosto on käynnissä. Varmista myös, että laitat saman kauhan nimen, ämpäriavaimen ja käyttöavaimen niin, että ne kulkevat samaan kojelautaan.

Luo yksi tiedosto sekä säällä että ilmanlaadulla

Ja jos sinusta tuntuu todella rohkealta, voit laittaa osan ilmanlaatukoodista sääpython -skriptiisi ja käyttää vain yhtä komentosarjaa. Se vaatii hieman enemmän koodausta kuin kaksi muuta vaihtoehtoa, mutta se tekee yksinkertaistetusta ohjelmasta.

Striimaa lisätietoja AirVisual -sovellusliittymästä

Kuten huomasit, kun soitimme AirVisual -sovellusliittymään, siinä on enemmän tietoa kuin pelkkä ilmanlaatu. Se tarjoaa myös lämpötilan, kosteuden, tuulen nopeuden, tuulen suunnan ja ilmanpaineen. Voimme lähettää nämä tiedot alkuperäiseen valtioon samalla tavalla kuin lähetimme ilmanlaatuindeksin arvon ja tärkeimmät epäpuhtaudet. Sinun tarvitsee vain kirjoittaa muutama lisää lausuntoja.

Suositeltava: