Tartalomjegyzék:
- 1. lépés: Első lépések
- 2. lépés: AirVisual API
- 3. lépés: Kezdeti állapot
- 4. lépés: Levegőminőség -műszerfal
- 5. lépés: Készítsen teljes időjárási irányítópultot
Videó: AirVisual Air Quality API műszerfal: 5 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Az AirVisual (https://www.airvisual.com) egy olyan webhely, amely világszerte adatokat szolgáltat a levegő minőségéről. Rendelkeznek API -val, amelyet a levegőminőségi adatoknak a műszerfalra küldésére használunk. Az API -val hasonlóan fogunk működni, mint az időjárás -irányítópulttal.
Ez egy egyszerű projekt, amely megtanítja az API használatát. Lássunk neki!
1. lépés: Első lépések
A kód nagy részét már összeállítottuk, de az út során néhány módosítást kell végrehajtania. Sok lehetőség van arra is, hogy kibővítsük azt, amit tettünk.
Ahhoz, hogy lekérje mindazt, amit előkészítettünk Önnek, klónoznia kell az adattárat a GitHubból. A GitHub egy fantasztikus szolgáltatás, amely lehetővé teszi számunkra az ilyen projektek tárolását, felülvizsgálatát és kezelését. Ezt a szkriptet egy dedikált eszközön szeretné futtatni. Használhat laptopot, Raspberry Pi -t vagy más egylapos számítógépet. A tároló klónozásához mindössze annyit kell tennünk, hogy belépünk számítógépünk vagy Pi termináljába, és beírjuk ezt a parancsot:
$ git klón
Nyomja meg az Enter billentyűt, és látni fogja ezeket az információkat:
$ git klón https://github.com/InitialState/airvisual.git Klónozás "airvisual" -ba… távoli: Objektumok felsorolása: 13, kész. távoli: Objektumok számlálása: 100% (13/13), kész. távoli: Objektumok tömörítése: 100% (12/12), kész. távirányító: Összesen 13 (delta 2), újrafelhasznált 0 (delta 0), csomag újrahasznosított 0 Objektumok kicsomagolása: 100% (13/13), kész.
Ha ezt látja, akkor gratulálunk, sikeresen klónozta a GitHub Repo -t, és megvan minden szükséges fájl a projekt létrehozásához. Lépjünk az új könyvtárba. A könyvtárak megváltoztatásához mindössze annyit kell tennie, hogy beírja a „cd” -t, majd beírja annak a könyvtárnak a nevét, ahová szeretne menni. Ebben az esetben beírjuk:
$ cd airvisual
Miután megnyomtuk az enter billentyűt, látni fogjuk, hogy most a légitársaságok könyvtárában vagyunk. Írjuk be az "ls" -t, hogy lássuk, milyen fájlokat telepítettünk. Valahogy így kell kinéznie:
LICENCE README.md airquality.py
Szükségünk van néhány más elemre, mielőtt szerkeszteni tudjuk a kódot, ezért nézzük meg a Air Quality API -t.
2. lépés: AirVisual API
Az AirVisual rendelkezik egy levegőminőségi (AQI) és szennyező API -val, amely havi akár 10 000 API -hívást tesz lehetővé ingyenesen. Regisztrálhat a közösségi szintre. Miután feliratkozott, lépjen a My Air és az API fülre. Itt találja meg API kulcsait és dokumentációját az API -n.
Kattintson az +Új kulcs gombra az első API hozzáférési kulcsunk létrehozásához. A Terv kiválasztása legördülő menüből válassza ki a Közösség lehetőséget, majd kattintson a Létrehozás gombra. Ha minden jól megy, megjelenik egy sikeres üzenet, és visszatérhet az API irányítópultjához, ahol megtalálhatja az új kulcsfontosságú információkat. A kulcsérték (számok és karakterek) az, amire szüksége lesz ehhez a projekthez. Ha átnézi az API dokumentációját, látni fogja, hogy többféle API hívást kezdeményezhet. Ehhez a projekthez a legközelebbi városi adatokat szeretnénk beszerezni a GPS koordináták alapján. Ehhez a híváshoz szüksége lesz a hosszúsági, szélességi és API -kulcsra. Írja be ezeket a paramétereket az alábbi hívásba, írja be a böngésző címsorába, és nyomja meg az Enter billentyűt.
api.airvisual.com/v2/nearest_city?lat={{LATITUDE}}&lon={{LONGITUDE}}&key={{YOUR_API_KEY}}
Ez a GPS koordináták alapján adja vissza a legközelebbi város adatait. Ez valahogy így fog kinézni:
Javaslom, hogy használjon JSON formázót, hogy jobban lássa az adatokat. Ha ezt használja, akkor egy kicsit így fog kinézni:
"állapot": "siker", "data": {"city": "Nashville", "state": "Tennessee", "country": "USA", "location": {"type": "Point", "koordinates": [-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}, "szennyezés": {"ts": "2019-04-08T18: 00: 00.000Z", "aqius": 10, "mainus": "p2", "aqicn": 3, "maincn": "p2"}
Könnyen láthatjuk, hogy már rendelkezünk információkkal a helyről, az időjárásról és a szennyezésről. A két érték, amelyre ebben a projektben összpontosítunk, az USA levegőminőségi indexe (aquis) és a fő szennyezőanyag (mainus). A levegőminőség -index értéke megmutatja, hogy mi a helyi levegőminőségi érték, és hogyan érinti ez az Ön egészségét. A színkódos táblázat az alábbiakban található. A fő szennyezőanyag megmondja, hogy az Ön területén melyik a levegőben lévő fő szennyezőanyag (részecskék, nitrogén -oxid, ózon, szén -monoxid, kén -oxid). Ezek a szennyező anyagok jellemzően a füstkötegek vagy a járművek kibocsátásának melléktermékei.
Most, hogy tudjuk, hogyan kell használni az Air Visual API -t, a következő dolog, amire szükségünk lesz, az irányítópult platformja az adatok megjelenítéséhez.
3. lépés: Kezdeti állapot
Szeretnénk az időjárási adatainkat felhőszolgáltatásba továbbítani, és ez a szolgáltatás az adatainkat egy szép irányítópulttá alakítani. Adatainknak célállomásra van szükségük, így a kezdeti állapotot fogjuk használni.
Regisztráljon a kezdeti államfiókhoz
Lépjen a https://iot.app.initialstate.com oldalra, és hozzon létre egy új fiókot.
Telepítse az ISStreamert
Telepítse a Initial State Python modult a laptopjára vagy a Raspberry Pi -re. Parancssorban futtassa a következő parancsot:
$ / curl -sSL https://iot.app.initialstate.com -o -| sudo bash
Készíts egy automata
A curl parancs futtatása után a következő kimenethez hasonlót lát a képernyőn:
$ / curl -sSL https://iot.app.initialstate.com -o -| sudo bash
Jelszó: Kezdetben az ISStreamer Python egyszerű telepítése! Ennek telepítése eltarthat pár percig, igyon egy kávét:) De ne felejtse el visszajönni, később kérdéseim lesznek! Talált easy_install: setuptools 1.1.6 Talált pip: pip 1.5.6 a /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip fő verzióból: 1 pip minor verzió: 5 Az ISStreamer megtalálható, frissítés… A követelmény már naprakész: ISStreamer a /Library/Python/2.7/site-packages fájlban Tisztítás … Szeretné automatikusan megkapni a példa szkriptet? [y/N] Hova szeretné menteni a példát? [alap::.initialstate.com felhasználónév: Írja be az iot.app.initialstate.com jelszót:
Amikor a rendszer kéri, hogy automatikusan szerezzen be egy példafájlt, írja be az y parancsot. Ez létrehoz egy teszt szkriptet, amelyet futtathatunk annak érdekében, hogy biztosítsuk az adatok streamelését a kezdeti állapotba. A következő parancssor megkérdezi, hová kívánja menteni a mintafájlt. Beírhat egyéni helyi elérési utat, vagy az Enter billentyűt lenyomva elfogadhatja az alapértelmezett helyet. Végül megkérdezi, hogy melyik kezdeti állapotú alkalmazást használja. Ha nemrég hozott létre fiókot, válassza a 2 -es lehetőséget, majd adja meg a felhasználónevet és a jelszót. Ezt követően a telepítés befejeződik.
Hozzáférési kulcsok
Vessünk egy pillantást a létrehozott példa szkriptre. $ nano is_example.py A 15. sorban egy sort láthat, amely a következővel kezdődik: streamer = Streamer (bucket_…. Ez a sor létrehoz egy új adatcsoportot „Python Stream Example” néven, és társítva van a fiókjához. Ez a társítás a access_key =”…” paraméter ugyanazon a soron. Ez a hosszú betű- és számsorozat az Ön kezdeti állapotú fiókjának hozzáférési kulcsa. Ha böngészőjében megnyitja a Kezdeti állapot fiókját, kattintson a jobb felső sarokban található felhasználónevére, majd a „Saját beállítások” menüpontban ugyanazt a hozzáférési kulcsot találja az oldal alján a „Streaming hozzáférési kulcsok” alatt. Minden alkalommal, amikor adatfolyamot hoz létre, az a hozzáférési kulcs az adatfolyamot a fiókjába irányítja (ezért ne ossza meg kulcsát bárkivel).
Futtassa a ExampleRun futtassa a teszt szkriptet, hogy megbizonyosodjon arról, hogy adatfolyamot tudunk létrehozni a kezdeti állapotú fiókjához. Futtassa a következőt a parancssorban:
$ python is_example.py
Példa adatok
Térjen vissza a kezdeti állapotú fiókjához a böngészőben. A „Python Stream Example” nevű új adatcsoportnak meg kellett volna jelennie a vödörpolc bal oldalán (előfordulhat, hogy frissítenie kell az oldalt). Kattintson erre a vödörre az adatok megtekintéséhez.
Most már készen áll a valós adatok streamelésére az AirVisual API -ból.
4. lépés: Levegőminőség -műszerfal
Most a szórakoztató részhez. Készen állunk arra, hogy elkezdjük használni az AirVisual API -t, hogy légminőségi műszerfalat hozzunk létre, és rögzítsük a légszennyezéssel kapcsolatos adatokat, bárhol is döntünk. Ez az airquality.py szkript egyszerűen meghívja az AirVisual API -t az Ön API kulcsa segítségével, és lekéri az aktuális légszennyezési információkat. Ezeket az adatokat továbbítja a kezdeti állapotú fiókjába is, amely lehetővé teszi a levegőminőség -irányítópult létrehozását.
A szkripthez a korábban klónozott Github tárolón keresztül férhet hozzá. Először is meg kell győződnünk arról, hogy az AirVisual könyvtárban vagyunk:
$ cd airvisual
Innen hozzáférhet a python fájlhoz, amelyet a levegőminőség -irányítópult létrehozásához futtatunk. A fájl futtatása előtt néhány változtatást kell végrehajtanunk. A python fájl megnyitásához használja a nano parancsot a szövegszerkesztő megnyitásához:
$ nano airquality.py
Miután megnyitotta a szövegszerkesztőt, a következőt fogja látni a szkript tetején:
# --------- Felhasználói beállítások ---------
LATITUDE = "LAT" LONGITUDE = "LONG" AIRVISUAL_API_KEY = "AIR VISUAL API KEY" BUCKET_NAME = "Local Air Quality" BUCKET_KEY = "aq1" ACCESS_KEY = "INITIAL STATE ACCES KEY" MINUTES_BETWE-MINUTES_BETWE -------------------------
meg kell adnia a szélességi, hosszúsági, AirVisual API -kulcsát és a Kezdeti állapot hozzáférési kulcsot. A MINUTES_BETWEEN_READS paraméter beállítja, hogy a szkript milyen gyakran kérdezze le az AirVisual API -t a levegőminőségről. 5 perc elegendő idő ahhoz, hogy ne lépje túl a havi 10 000 API hívást. A rövid távú tesztelés érdekében ezt 0,5 percre állíthatja be. Miután megadta a paramétereket, mentse el és lépjen ki a bevitt szövegből a Control+X billentyűkombinációval. Most már készen áll a szkript futtatására:
$ python airquality.py
Ha ezt a szkriptet hosszú ideig megszakítás nélkül szeretné futtatni, akkor használja a nohup parancsot (letiltás nélkül) az alábbiak szerint:
$ nohup python airquality.py &
Ha ez fut, menjen a Kezdeti állapotba az adatok megtekintéséhez. A műszerfalnak valahogy úgy kell kinéznie, mint az alábbi képen. Megvan a GPS -hely, a levegőminőségi index értéke és a fő szennyezőanyag.
Azt javaslom, hogy módosítsa az AQI értékét egy mérőlapra. Továbbá mozgassa a lapokat, és szükség szerint méretezze át. Ha ezt beágyazott műszerfalra használja, akkor szükség szerint mozgathatja őket.
Ha úgy dönt, hogy az AQI értékét mérőeszközré teszi, akkor beállíthatja a színküszöböt, hogy az hasonló legyen a levegőminőségi index táblázatához. Ez azonnali frissítést ad arról, hogy az AQI érték hol esik a diagramra, amikor ellenőrzi a műszerfalat. Hozzáadhat egy háttérképet az irányítópulthoz, hogy több kontextust adjon neki.
Tehát minden megvan, ami a levegőminőségű műszerfal létrehozásához szükséges. De mi van akkor, ha többet szeretne hozzáadni vagy hozzáadni a már létrehozott időjárás -irányítópulthoz? Ha ez a helyzet, akkor olvass tovább!
5. lépés: Készítsen teljes időjárási irányítópultot
Csak a levegőminőségi adatok nem elegendőek Önnek? Nos, rengeteg lehetőség van arra, hogy többet adjon hozzá a műszerfalához, vagy streamelje ezeket az adatokat egy már meglévő időjárási műszerfalra!
Az időjárás és a levegő minősége egyetlen műszerfalon
Ha már megvalósította a DarkSky API vagy a Hyper-Local Weather Dashboard projektünket, hozzáadhatja ezeket a levegőminőségi adatokat a meglévő műszerfalhoz. Ez elég egyszerű, mindössze annyit kell tennie, hogy módosítja a levegőminőségi parancsfájl paramétereit, hogy ugyanaz a vödör neve, vödör kulcsa és hozzáférési kulcsa legyen, mint amit az időjárási műszerfalhoz használt. Ez lehetővé teszi az adatok elküldését ugyanabba az irányítópultba. Most lesz egy teljes időjárás műszerfal!
Kérje meg időjárási Python -fájlját a levegőminőségű Python -fájl futtatásához
Egy másik lehetőség, ha nem akar két külön programot futtatni, ha a levegőminőségű python fájlt az időjárási projektek könyvtárába helyezi. Kérje meg az időjárási projekt python fájlját, hogy hívja fel a levegőminőségi fájlt, hogy az futhasson, amikor az időjárási fájl fut. Ismét ügyeljen arra, hogy ugyanazt a vödörnevet, vödörkulcsot és hozzáférési kulcsot helyezze el, hogy azok ugyanahhoz az irányítópulthoz fussanak.
Hozzon létre egyetlen fájlt az időjárás és a levegő minőségével
És ha igazán merésznek érzi magát, akkor a levegőminőségi kódok egy részét beillesztheti az időjárási python szkriptjébe, és csak egyetlen szkriptet kell futtatnia. Ez egy kicsit több kódolási erőfeszítést igényel, mint a másik két lehetőség, de egyszerűsített programot eredményez.
További információk közvetítése az AirVisual API -ból
Amint látta, amikor felhívtuk az AirVisual API -t, az több információt tartalmaz, mint a levegő minősége. Ezenkívül hőmérsékletet, páratartalmat, szélsebességet, szélirányt és légköri nyomást is biztosít. Ezt az információt ugyanúgy elküldhetjük a kezdeti államnak, mint a levegőminőségi index értékét és a fő szennyező anyagot. Csak néhány további nyilatkozatot kell írnia.
Ajánlott:
Élő Covid19 Tracker ESP8266 és OLED használatával - Valós idejű Covid19 műszerfal: 4 lépés
Élő Covid19 Tracker ESP8266 és OLED használatával | Valós idejű Covid19 irányítópult: Látogassa meg a Techtronic kemény webhelyét: http: //techtronicharsh.com Mindenhol hatalmas koronavírus -járvány (COVID19) kitörése van. Szükségessé vált a COVID-19 jelenlegi forgatókönyvének figyelemmel kísérése a világban. Tehát, mivel otthon volt, ez volt a
Raspberry Pi motorkerékpár műszerfal: 9 lépés (képekkel)
Raspberry Pi motorkerékpár műszerfal: Diákként Multimédia & Kommunikációs technológia a Howest Kortrijkban, saját IoT projektet kellett készítenem. Ez az első évben követett összes modult egyetlen nagy projektbe egyesítené. Mivel szabadidőmben sokat motorozok
XiaoMi vákuum + Amazon gomb = műszerfal tisztítása: 5 lépés (képekkel)
XiaoMi Vákuum + Amazon gomb = Vezérlőtisztítás: Ez az utasítás elmagyarázza, hogyan kell használni a tartalék Amazon Dash gombokat a XiaoMi vákuum vezérléséhez. Kaptam egy csomó Amazon gombot, amikor 1 dollár volt, és nem használtam őket. De egy új robotporszívó kézhezvételekor úgy döntök
Guino: Műszerfal az Arduino számára: 4 lépés (képekkel)
Guino: Irányítópult az Arduino számára: Ez a projekt a kísérletek része, amelyet az Instructables lakóhelyén élő művész készítésekor végeztek. A többi projektet itt tekintheti meg. Bonyolult feladat lehet a valós idejű adatok hibakeresése és megjelenítése az Arduino táblán. Általában ragaszkodik a s
Műszerfal billentyűzet LCD kijelzővel és Arduino Uno: 9 lépés
Műszerfal billentyűzet LCD kijelzővel és Arduino Uno -val: Ez egy mátrix billentyűzet, amely LCD kijelzővel és Arduino Uno -val együtt működik, a legalapvetőbb, ami ma létezik. Ennek a beállításnak az a célja, hogy olyan programot hozzon létre, amely megkapja a mátrix billentyűzetre beírt jelszót, és összehasonlítja azt a megfelelő pa