Përmbajtje:

Paneli i API i Cilësisë së Ajrit AirVisual: 5 hapa
Paneli i API i Cilësisë së Ajrit AirVisual: 5 hapa

Video: Paneli i API i Cilësisë së Ajrit AirVisual: 5 hapa

Video: Paneli i API i Cilësisë së Ajrit AirVisual: 5 hapa
Video: Zona me e ndotur në Tiranë, live matje e cilësisë së ajrit - Shqipëria Live,12 Shkurt 2020 2024, Korrik
Anonim
Image
Image

AirVisual (https://www.airvisual.com) është një faqe në internet që siguron të dhëna për cilësinë e ajrit në të gjithë botën. Ata kanë një API që ne do të përdorim për të marrë të dhëna për cilësinë e ajrit për t'i dërguar në një pult. Ne do të ndërveprojmë me këtë API të ngjashme me atë që bëmë me pultin e motit.

Ky është një projekt i thjeshtë që ju mëson se si të përdorni një API. Le të fillojmë!

Hapi 1: Fillimi

API AirVisual
API AirVisual

Ne tashmë e kemi bashkuar shumicën e kodit, por do t'ju duhet që të bëni disa rregullime gjatë rrugës. Ka shumë mundësi për të zgjeruar atë që kemi bërë, gjithashtu.

Për të tërhequr të gjitha gjërat që kemi përgatitur për ju, do t'ju duhet të klononi depon nga GitHub. GitHub është një shërbim i mrekullueshëm që na lejon të ruajmë, rishikojmë dhe menaxhojmë projekte si kjo. Ju do të dëshironi ta ekzekutoni këtë skenar në një pajisje të dedikuar. Ju mund të përdorni një kompjuter portativ, Raspberry Pi ose një kompjuter tjetër me një bord të vetëm. Për të klonuar depon, gjithçka që duhet të bëjmë është të hyjmë në terminalin e kompjuterit tonë ose Pi dhe të shtypim këtë komandë:

klon $ git

Shtypni enter dhe do të shihni këtë informacion:

$ git klon https://github.com/InitialState/airvisual.git Klonimi në 'airvisual' … telekomandë: Numërimi i objekteve: 13, të përfunduara. telekomandë: Numërimi i objekteve: 100% (13/13), i kryer. telekomandë: Kompresimi i objekteve: 100% (12/12), i kryer. telekomandë: Gjithsej 13 (delta 2), ripërdorur 0 (delta 0), pako-ripërdorur 0 Zhbllokimi i objekteve: 100% (13/13), i kryer.

Pasi ta shihni këtë, urime, keni klonuar me sukses GitHub Repo dhe keni të gjithë skedarët e nevojshëm për të ndërtuar këtë projekt. Le të kalojmë në drejtorinë e re. Për të ndryshuar drejtoritë, gjithçka që duhet të bëni është të shkruani "cd" dhe pastaj të shkruani emrin e drejtorisë në të cilën dëshironi të shkoni. Në këtë rast, ne do të shkruajmë:

$ cd airvisual

Pasi të godasim enter, do të shihni që tani jemi në drejtorinë vizuale. Le të shtypim "ls" për të parë se cilat skedarë kemi instaluar. Ju duhet të dukeni diçka si më poshtë:

LICENCE README.md airquality.py

Ne kemi nevojë për disa artikuj të tjerë para se të mund të redaktojmë kodin, kështu që le të shohim API të Cilësisë së Ajrit më tej.

Hapi 2: API AirVisual

API AirVisual
API AirVisual
API AirVisual
API AirVisual

AirVisual ka një API të cilësisë së ajrit (AQI) dhe ndotjes që lejon deri në 10, 000 thirrje API në muaj falas. Mund të regjistroheni për nivelin e Komunitetit. Pasi të regjistroheni, mund të shkoni te My Air dhe skeda API. Këtu do të gjeni çelësat dhe dokumentacionin tuaj API në API.

Klikoni butonin +Çelësi i ri për të krijuar çelësin tonë të parë të qasjes në API. Për Zgjidhni Planin, përdorni zbritësin për të zgjedhur Komunitetin dhe klikoni Krijo. Nëse gjithçka shkon mirë, do të shihni një mesazh suksesi dhe mund të ktheheni në panelin tuaj të API për të gjetur informacionin tuaj të ri kryesor. Vlera kryesore (numrat dhe karakteret) është ajo që ju nevojitet për këtë projekt. Nëse lexoni dokumentacionin API do të shihni se ka shumë lloje të thirrjeve API që mund të bëni. Për këtë projekt ne duam të marrim të dhënat më të afërta të qytetit bazuar në koordinatat GPS. Për këtë thirrje do t'ju duhet gjatësia, gjerësia dhe çelësi juaj API. Futni ato parametra në thirrjen më poshtë, vendosini në një shirit adresash në shfletuesin tuaj dhe shtypni enter.

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

Kjo do të kthejë të dhënat e qytetit më të afërt bazuar në koordinatat GPS. Do të duket diçka si kjo:

Unë rekomandoj të përdorni një formatues JSON për të marrë një pamje më të mirë të të dhënave. Nëse e përdorni atë, në vend të kësaj do të duket pak si kjo:

"status": "sukses", "data": {"city": "Nashville", "state": "Tennessee", "country": "USA", "location": {"type": "Point", "koordinatat": [-86.7386, 36.1767]}, "aktuale": {"moti": {"ts": "2019-04-08T19: 00: 00.000Z", "_v": 0, "krijuarAt": "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}, "ndotje": {"ts": "2019-04-08T18: 00: 00.000Z", "aqius": 10, "mainus": "p2", "aqicn": 3, "maincn": "p2"}

Ne lehtë mund ta shohim tani që kemi informacion mbi vendndodhjen, motin dhe ndotjen. Dy vlerat në të cilat fokusohemi për këtë projekt është Indeksi i Cilësisë së Ajrit US (aquis) dhe Ndotësi kryesor (mainus). Vlera e Indeksit të Cilësisë së Ajrit na tregon se cila është vlera lokale e cilësisë së ajrit dhe si lidhet me shëndetin tuaj. Grafiku i koduar me ngjyra është më poshtë. Ndotësi kryesor na tregon se cili është ndotësi kryesor në ajër për zonën tuaj (grimca, oksid nitrogjeni, ozoni, monoksidi i karbonit, oksid squfuri). Këta ndotës janë zakonisht nënprodukte të pirgjeve të tymit ose emetimeve të automjeteve.

Tani që ne e dimë se si të përdorim Air Visual API, gjëja tjetër që do të na duhet është një platformë pulti për të shfaqur të dhënat.

Hapi 3: Gjendja fillestare

Gjendja fillestare
Gjendja fillestare
Gjendja fillestare
Gjendja fillestare

Ne duam t'i transmetojmë të gjitha të dhënat tona të motit në një shërbim cloud dhe ta bëjmë atë shërbim t'i kthejë të dhënat tona në një pult të bukur. Të dhënat tona kanë nevojë për një destinacion kështu që ne do të përdorim gjendjen fillestare si atë destinacion.

Regjistrohuni për llogarinë fillestare të shtetit

Shkoni në https://iot.app.initialstate.com dhe krijoni një llogari të re.

Instaloni ISStreamer

Instaloni modulin Initial State Python në laptopin tuaj ose Raspberry Pi. Në një komandë të shpejtë, ekzekutoni komandën e mëposhtme:

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

Bëni pak Automagic

Pasi të ekzekutoni komandën curl, do të shihni diçka të ngjashme me daljen e mëposhtme në ekran:

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

Fjalëkalimi: Fillimi ISStreamer Python Instalim i lehtë! Kjo mund të zgjasë disa minuta për të instaluar, pi pak kafe:) Por mos harroni të ktheheni, do të kem pyetje më vonë! Gjetur easy_install: setuptools 1.1.6 Gjetur pip: pip 1.5.6 nga /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) versioni kryesor i pipit: 1 pip version i vogël: 5 ISStreamer u gjet, duke u përditësuar … Kërkesa tashmë e përditësuar: ISStreamer në /Library/Python/2.7/site-packages Pastrimi … Dëshironi të merrni automatikisht një skenar shembull? [y/N] Ku doni ta ruani shembullin? [parazgjedhja:./is_example.py] Ju lutemi zgjidhni cilin aplikacion të gjendjes fillestare po përdorni: 1. app.initialstate.com 2. [E RE!] iot.app.initialstate.com Shkruani zgjedhjen 1 ose 2: Futni iot.app.initialstate.com emri i përdoruesit: Shkruani fjalëkalimin iot.app.initialstate.com:

Kur ju kërkohet të merrni automatikisht një skenar shembull, shkruani y. Kjo do të krijojë një skript testi që mund të ekzekutojmë për të siguruar që ne mund t'i transmetojmë të dhënat në gjendjen fillestare. Fjala tjetër do të pyesë se ku doni të ruani skedarin shembull. Ju ose mund të shkruani një shteg të personalizuar lokal ose të shtypni enter për të pranuar vendndodhjen e paracaktuar. Më në fund, do të pyeteni se cilin aplikacion të gjendjes fillestare po përdorni. Nëse keni krijuar kohët e fundit një llogari, zgjidhni opsionin 2 dhe futni emrin e përdoruesit dhe fjalëkalimin. Pas kësaj, instalimi do të përfundojë.

Çelësat e hyrjes

Le të hedhim një vështrim në skenarin shembull të krijuar. $ nano is_example.py Në rreshtin 15, do të shihni një linjë që fillon me streamer = Streamer (bucket_…. Këto rreshta krijojnë një kovë të re të të dhënave të quajtur "Shembulli i rrjedhës Python" dhe shoqërohet me llogarinë tuaj. Kjo shoqatë ndodh për shkak të parametri access_key =”…” në të njëjtën linjë. Ajo seri e gjatë shkronjash dhe numrash është çelësi i hyrjes në llogarinë tuaj të gjendjes fillestare. Nëse shkoni te llogaria juaj e gjendjes fillestare në shfletuesin tuaj të internetit, klikoni mbi emrin e përdoruesit në krye të djathtë, pastaj shkoni te "cilësimet e mia", do të gjeni të njëjtin çelës aksesi në fund të faqes nën "Çelësat e hyrjes në transmetim". Sa herë që krijoni një rrjedhë të të dhënave, ky çelës aksesi do ta drejtojë atë rrjedhë të të dhënave në llogarinë tuaj (kështu që mos ndani çelësin tuaj me këdo).

Drejtojeni Shembullin Run Run skriptin e testit për t'u siguruar që mund të krijojmë një rrjedhë të dhënash në llogarinë tuaj të gjendjes fillestare. Drejtoni sa vijon në komandën tuaj të shpejtë:

$ python is_example.py

Shembull i të dhënave

Kthehuni te llogaria juaj e gjendjes fillestare në shfletuesin tuaj të internetit. Një kovë e re e të dhënave e quajtur "Shembulli i Python Stream" duhet të ishte shfaqur në të majtë në raftin tuaj të kovës (mund t'ju duhet të rifreskoni faqen). Klikoni në këtë kovë për të parë të dhënat.

Tani jeni gati për të filluar transmetimin e të dhënave reale nga API AirVisual.

Hapi 4: Paneli i Cilësisë së Ajrit

Paneli i Cilësisë së Ajrit
Paneli i Cilësisë së Ajrit
Paneli i Cilësisë së Ajrit
Paneli i Cilësisë së Ajrit
Paneli i Cilësisë së Ajrit
Paneli i Cilësisë së Ajrit
Paneli i Cilësisë së Ajrit
Paneli i Cilësisë së Ajrit

Tani për pjesën argëtuese. Ne jemi gati të fillojmë të përdorim API AirVisual për të krijuar një pult të cilësisë së ajrit dhe të kapim të dhënat e ndotjes së ajrit për kudo që zgjedhim. Ky skenar airquality.py thjesht thërret API AirVisual duke përdorur çelësin tuaj API dhe merr informacionin aktual të ndotjes së ajrit. Gjithashtu i transmeton ato të dhëna në llogarinë tuaj fillestare, e cila do t'ju lejojë të krijoni një pult të cilësisë së ajrit.

Ju mund të hyni në skenar përmes depozitës Github që kemi klonuar më herët. Gjëja e parë që duhet të bëjmë është të sigurohemi që jemi në drejtorinë AirVisual:

$ cd airvisual

Nga këtu, do të keni mundësi të hyni në skedarin python që do të ekzekutojmë për të krijuar panelin tonë të cilësisë së ajrit. Duhet të bëjmë disa ndryshime në skedar para se ta ekzekutojmë. Për të hapur skedarin python, përdorni komandën nano për të hapur redaktuesin e tekstit:

$ nano airquality.py

Pasi redaktuesi i tekstit është i hapur, do të shihni sa më poshtë pranë krye të skriptit tuaj:

# --------- Cilësimet e përdoruesit ---------

LATITUDE = "LAT" LONGITUDE = "LONG" AIRVISUAL_API_KEY = "ÇELEYSI I API-TIS VISUAL AIR" BUCKET_NAME = "Cilësia e ajrit lokal" BUCKET_KEY = "aq1" ACCESS_KEY = "ÇELEYSIT Fillestarë të Shteteve" MINUTES_BETWE =- -------------------------

duhet të futni gjerësinë, gjatësinë, çelësin API të AirVisual dhe çelësin e hyrjes në gjendjen fillestare. Parametri MINUTES_BETWEEN_READS do të vendosë sa shpesh skenari juaj do të anketojë API -në e AirVisual për informacionin e cilësisë së ajrit. 5 minuta kohë të mjaftueshme në mënyrë që të mos kaloni kufirin tuaj prej 10, 000 API në muaj. Për hir të testimit afatshkurtër, mund ta vendosni këtë në 0.5 minuta. Pasi të keni futur parametrat tuaj, ruani dhe dilni nga teksti duke futur Control+X. Tani jeni gati për të ekzekutuar skriptin tuaj:

$ python airquality.py

Nëse dëshironi ta lini këtë skenar të funksionojë pa ndërprerje për një kohë të gjatë, mund të përdorni komandën nohup (pa ndërprerje) si më poshtë:

$ nohup python airquality.py &

Pasi të funksionojë, shkoni në gjendjen fillestare për të parë të dhënat tuaja. Pulti juaj duhet të duket diçka si fotografia më poshtë. Ju keni vendndodhjen tuaj GPS, vlerën e indeksit tuaj të cilësisë së ajrit dhe ndotësin tuaj kryesor.

Rekomandimi im është që të ndryshoni vlerën tuaj AQI në një pllakë matëse. Gjithashtu, lëvizni pllakat përreth dhe ndryshoni madhësinë sipas nevojës. Nëse e përdorni këtë për një pult të integruar, mund t'i lëvizni ato për t'u përshtatur sipas nevojës.

Nëse vendosni ta bëni vlerën tuaj AQI një matës, atëherë mund ta vendosni pragun e ngjyrave të jetë i ngjashëm me tabelën e indeksit të cilësisë së ajrit. Kjo ju jep një përditësim të menjëhershëm se ku bie vlera AQI në tabelë kur kontrolloni pultin tuaj. Ju mund të shtoni një imazh të sfondit në pultin tuaj për t'i dhënë më shumë kontekst.

Kështu që ju keni gjithçka që ju nevojitet për të krijuar një pult të cilësisë së ajrit. Por, çfarë nëse doni të shtoni më shumë ose ta shtoni këtë në një pult moti që keni krijuar tashmë? Nëse është kështu, atëherë vazhdoni të lexoni!

Hapi 5: Bëni një Pult të Motit Gjithsej

Bëni një pult të motit total
Bëni një pult të motit total

A nuk janë të mjaftueshme të dhënat për cilësinë e ajrit për ju? Pra, ka shumë mundësi për të shtuar më shumë në pultin tuaj ose për t'i transmetuar këto të dhëna në një pult moti që tashmë keni!

Transmetoni motin dhe cilësinë e ajrit në një pult të vetëm

Nëse e keni zbatuar tashmë projektin tonë DarkSky API ose Hyper-Local Weather Dashboard, mund t'i shtoni këto të dhëna të cilësisë së ajrit në pultin tuaj ekzistues. Prettyshtë shumë e thjeshtë, gjithçka që duhet të bëni është të ndryshoni parametrat tuaj në skenarin e cilësisë së ajrit për të pasur të njëjtin emër kovë, çelës kovë dhe çelës aksesi si ai që keni përdorur për pultin tuaj të motit. Kjo do të lejojë që të dhënat të dërgohen në të njëjtin pult. Tani do të kesh një pult total të motit!

Kërkoni që Skedari juaj i Motit Python të bëjë një thirrje për të ekzekutuar skedarin Python të Cilësisë së Ajrit

Një opsion tjetër nëse nuk doni të ekzekutoni dy programe të veçanta është të vendosni skedarin python të cilësisë së ajrit në drejtorinë e projektit të motit. Kërkojini skedarit python të projektit të motit të bëjë një thirrje në skedarin e cilësisë së ajrit në mënyrë që të funksionojë kur skedari juaj i motit po funksionon. Përsëri, sigurohuni që të vendosni të njëjtin emër të kovës, çelësin e kovës dhe çelësin e hyrjes në mënyrë që ata të shkojnë në të njëjtën pult.

Krijoni një skedar të vetëm me cilësinë e motit dhe ajrit

Dhe nëse ndiheni vërtet të guximshëm, mund të vendosni një pjesë të kodit të cilësisë së ajrit në shkrimin tuaj python të motit dhe thjesht të keni një skenar të vetëm për t'u ekzekutuar. Do të kërkojë pak më shumë përpjekje për kodim sesa dy opsionet e tjera, por krijon një program të thjeshtuar.

Transmetoni informacion shtesë nga API AirVisual

Siç e keni parë kur bëmë një telefonatë në API AirVisual, ai ka më shumë informacion sesa vetëm cilësinë e ajrit. Ai gjithashtu siguron temperaturën, lagështinë, shpejtësinë e erës, drejtimin e erës dhe presionin atmosferik. Ne mund ta dërgojmë atë informacion në gjendjen fillestare në të njëjtën mënyrë siç kemi dërguar vlerën e indeksit të cilësisë së ajrit dhe ndotësin kryesor. Kërkon vetëm që të shkruani disa deklarata të tjera nëse.

Recommended: