Orodha ya maudhui:

Dashibodi ya API ya Ubora wa Hewa ya AirVisual: Hatua 5
Dashibodi ya API ya Ubora wa Hewa ya AirVisual: Hatua 5

Video: Dashibodi ya API ya Ubora wa Hewa ya AirVisual: Hatua 5

Video: Dashibodi ya API ya Ubora wa Hewa ya AirVisual: Hatua 5
Video: SABABU ZA MATAIRI YA GARI KUWA NA RANGI NYEUSI 2024, Julai
Anonim
Image
Image

AirVisual (https://www.airvisual.com) ni tovuti ambayo hutoa data juu ya ubora wa hewa ulimwenguni kote. Wana API ambayo tutatumia kupata data ya hali ya hewa kutuma kwenye dashibodi. Tutashirikiana na API hii sawa na jinsi tulivyofanya na dashibodi ya hali ya hewa.

Huu ni mradi rahisi ambao unakufundisha jinsi ya kutumia API. Tuanze!

Hatua ya 1: Kuanza

API ya AirVisual
API ya AirVisual

Tayari tumeweka nambari nyingi pamoja, lakini utahitaji kufanya marekebisho kadhaa njiani. Kuna fursa nyingi za kupanua kile tulichofanya, pia.

Ili kurudisha vitu vyote ambavyo tumekuandalia, utahitaji kugundua hazina kutoka GitHub. GitHub ni huduma nzuri ambayo inatuwezesha kuhifadhi, kurekebisha, na kusimamia miradi kama hii. Utataka kutumia hati hii kwenye kifaa kilichojitolea. Unaweza kutumia kompyuta ndogo, Raspberry Pi, au kompyuta nyingine moja ya bodi. Kuunganisha hazina yote tunayohitaji kufanya ni kwenda kwenye kituo cha kompyuta yetu au Pi, na andika amri hii:

$ git clone

Piga kuingia na utaona habari hii:

$ git clone https://github.com/InitialState/airvisual.git Kujiingiza kwenye 'airvisual'… kijijini: Kuhesabu vitu: 13, kumalizika. kijijini: Kuhesabu vitu: 100% (13/13), imefanywa. kijijini: Kusisitiza vitu: 100% (12/12), imefanywa. kijijini: Jumla ya 13 (delta 2), imetumika tena 0 (delta 0), imetumika tena pakiti 0 Kufungua vitu: 100% (13/13), imefanywa.

Mara tu unapoona hii basi hongera, umefanikiwa kuunda GitHub Repo na kuwa na faili zote zinazohitajika kujenga mradi huu. Wacha tuhamie kwenye saraka mpya. Ili kubadilisha saraka, unachohitaji kufanya ni aina "cd" na kisha andika jina la saraka ambayo unataka kwenda. Katika kesi hii, tutaandika:

$ cd ya mwangaza

Mara tu tutakapogonga kuingia, utaona kuwa sasa tuko kwenye saraka ya kiufundi. Wacha tuandike "ls" ili tuone faili ambazo tumeweka. Unapaswa kuonekana kama ifuatavyo:

TANGAZO LA LESENI.md usawa wa hewa.py

Tunahitaji vitu vingine kabla ya kuhariri nambari hiyo basi wacha tuangalie API ya Ubora wa Hewa ijayo.

Hatua ya 2: API ya AirVisual

API ya AirVisual
API ya AirVisual
API ya AirVisual
API ya AirVisual

AirVisual ina ubora wa hewa (AQI) na API ya uchafuzi wa mazingira ambayo inaruhusu hadi simu 10, 000 za API kwa mwezi bure. Unaweza kujisajili kwa kiwango cha Jumuiya. Mara tu unapojiandikisha, unaweza kwenda kwa Hewa Yangu na kichupo cha API. Ni hapa kwamba utapata funguo zako za API na nyaraka kwenye API.

Bonyeza kitufe cha + Kitufe kipya ili kuunda kitufe chetu cha kwanza cha ufikiaji cha API. Kwa Chagua Mpango, tumia menyu kunjuzi kuchagua Jumuiya na bonyeza Unda. Ikiwa kila kitu kitaenda vizuri utaona ujumbe wa mafanikio na unaweza kurudi kwenye dashibodi yako ya API ili kupata habari yako mpya muhimu. Thamani muhimu (nambari na wahusika) ndio utahitaji kwa mradi huu. Ukipitia nyaraka za API utaona kuna aina nyingi za simu za API ambazo unaweza kupiga. Kwa mradi huu tunataka kupata data ya jiji iliyo karibu kulingana na kuratibu za GPS. Kwa simu hii utahitaji longitudo, latitudo, na ufunguo wa API. Ingiza vigezo hivi kwenye simu hapa chini, weka hiyo kwenye bar ya anwani kwenye kivinjari chako, na ugonge kuingia.

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

Hii itarudisha data ya jiji la karibu kulingana na kuratibu za GPS. Itaonekana kama hii:

Ninapendekeza kutumia fomati ya JSON kupata maoni bora ya data. Ikiwa unatumia hiyo itaonekana kama hii badala yake:

"hadhi": "mafanikio", "data": {"city": "Nashville", "state": "Tennessee", "country": "USA", "location": {"type": "Point", "coordinates": [- 86.7386, 36.1767]}, "ya sasa": {"hali ya hewa": {"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}, "uchafuzi wa mazingira": {"ts": "2019-04-08T18: 00: 00.000Z", "aqius": 10, "mainus": "p2", "aqicn": 3, "maincn": "p2"}

Tunaweza kuona kwa urahisi sasa kwa kuwa tuna habari juu ya mahali, hali ya hewa, na uchafuzi wa mazingira. Maadili mawili tunayozingatia mradi huu ni Kiwango cha Ubora wa Hewa Amerika (aquis) na Uchafuzi Mkuu (mainus). Thamani ya Kiwango cha Ubora wa Hewa inatuambia ni nini thamani ya hali ya hewa ya ndani na jinsi hiyo inahusu afya yako. Chati yenye alama ya rangi iko hapa chini. Mchafuzi mkuu anatuambia ni nini uchafuzi kuu katika hewa ni kwa eneo lako (chembe chembe, oksidi ya nitrojeni, ozoni, monoksidi kaboni, oksidi ya sulfuri). Vichafuzi hivi kawaida ni bidhaa zinazozalishwa na mwingi wa moshi au uzalishaji wa gari.

Sasa kwa kuwa tunajua jinsi ya kutumia API ya Maonyesho ya Hewa, jambo linalofuata tutahitaji jukwaa la dashibodi kuonyesha data.

Hatua ya 3: Jimbo la Awali

Jimbo la Awali
Jimbo la Awali
Jimbo la Awali
Jimbo la Awali

Tunataka kusambaza data zetu zote za hali ya hewa kwa huduma ya wingu na kuwa na huduma hiyo igeuze data yetu kuwa dashibodi nzuri. Takwimu zetu zinahitaji marudio kwa hivyo tutatumia Jimbo la Awali kama marudio hayo.

Jisajili kwa Akaunti ya Jimbo la Awali

Nenda kwa https://iot.app.initialstate.com na uunda akaunti mpya.

Sakinisha ISStreamer

Sakinisha moduli ya Python State State kwenye Laptop yako au Raspberry Pi. Kwa mwongozo wa amri, tumia amri ifuatayo:

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

Fanya Automagic

Baada ya kuendesha amri ya curl, utaona kitu sawa na pato lifuatalo kwenye skrini:

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

Nenosiri: Kuanzia Ufungaji rahisi wa ISStreamer Python! Hii inaweza kuchukua dakika kadhaa kufunga, kunyakua kahawa kadhaa:) Lakini usisahau kurudi, nitakuwa na maswali baadaye! Imepatikana easy_install: setuptools 1.1.6 Imepatikana pip: pip 1.5.6 kutoka / Library / Python / 2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip great version: 1 pip minor version: 5 ISStreamer imepatikana, inasasisha… Mahitaji tayari yamesasishwa: ISStreamer katika /Library/Python/2.7/site-packages Inasafisha… Je! Unataka kiatomati kupata hati ya mfano? [y / N] Unataka kuokoa mfano wapi? [chaguo-msingi:./is_example.py] Tafadhali chagua programu ipi ya Jimbo la Awali unayotumia: 1. app.initialstate.com 2. [NEW!] iot.app.initialstate.com Ingiza chaguo 1 au 2: Ingiza iot.app jina la mtumiaji la.initialstate.com: Ingiza nenosiri la iot.app.initialstate.com:

Unapohamasishwa kupata kiatomati hati, andika y. Hii itaunda hati ya majaribio ambayo tunaweza kukimbia ili kuhakikisha kuwa tunaweza kusambaza data kwenda Jimbo la Awali. Haraka inayofuata itauliza wapi unataka kuhifadhi faili ya mfano. Unaweza kuandika aina ya njia ya kawaida au kugonga kuingia kukubali eneo chaguo-msingi. Mwishowe, utaulizwa ni programu ipi ya Jimbo la Awali unayotumia. Ikiwa hivi karibuni umeunda akaunti, chagua chaguo 2 kisha ingiza jina la mtumiaji na nywila. Baada ya ufungaji huo utakamilika.

Fikia Funguo

Wacha tuangalie mfano wa hati ambayo iliundwa. $ nano is_example.py Kwenye laini ya 15, utaona laini inayoanza na streamer = Streamer (ndoo_…. Mistari hii inaunda ndoo mpya ya data iitwayo "Mfano wa Mkondo wa Python" na inahusishwa na akaunti yako. Chama hiki kinatokea kwa sababu ya access_key = "…" parameta kwenye mstari huo huo. Mfululizo huo mrefu wa herufi na nambari ni ufunguo wako wa ufikiaji wa akaunti ya Jimbo la Awali. Ukienda kwenye akaunti yako ya Jimbo la Awali katika kivinjari chako cha wavuti, bonyeza jina lako la mtumiaji kulia juu, kisha nenda kwa "mipangilio yangu", utapata kitufe hicho cha ufikiaji chini ya ukurasa chini ya "Funguo za Ufikiaji wa Utiririshaji". Kila wakati unapounda mkondo wa data, kitufe hicho cha ufikiaji kitaelekeza mkondo wa data kwenye akaunti yako (kwa hivyo usifanye shiriki ufunguo wako na mtu yeyote).

Endesha Mfano Tumia hati ya majaribio ili kuhakikisha kuwa tunaweza kuunda mkondo wa data kwenye akaunti yako ya Jimbo la Awali. Endesha yafuatayo kwa haraka ya amri yako:

$ chatu ni_mfano.py

Mfano wa Takwimu

Rudi kwenye akaunti yako ya Jimbo la Awali katika kivinjari chako cha wavuti. Ndoo mpya ya data iitwayo "Mfano wa Mkondo wa Python" inapaswa kuwa imeonekana kushoto kwenye rafu yako ya ndoo (huenda ukalazimika kuonyesha ukurasa upya). Bonyeza kwenye ndoo hii ili uone data.

Sasa uko tayari kuanza kutiririsha data halisi kutoka kwa AirVisual API.

Hatua ya 4: Dashibodi ya Ubora wa Hewa

Dashibodi ya Ubora wa Hewa
Dashibodi ya Ubora wa Hewa
Dashibodi ya Ubora wa Hewa
Dashibodi ya Ubora wa Hewa
Dashibodi ya Ubora wa Hewa
Dashibodi ya Ubora wa Hewa
Dashibodi ya Ubora wa Hewa
Dashibodi ya Ubora wa Hewa

Sasa kwa sehemu ya kufurahisha. Tuko tayari kuanza kutumia API ya AirVisual kuunda dashibodi ya ubora wa hewa na kunasa data ya uchafuzi wa hewa kwa kila tunapochagua. Hati hii ya airquality.py inaita tu AirVisual API kwa kutumia ufunguo wa API yako na kupata habari ya sasa ya uchafuzi wa hewa. Pia hutiririsha data hiyo kwa akaunti yako ya Jimbo la Awali, ambayo itakuruhusu kuunda dashibodi ya hali ya hewa.

Unaweza kupata hati kupitia hazina ya Github ambayo tuliunda mapema. Jambo la kwanza tunalohitaji kufanya ni kuhakikisha tuko kwenye saraka ya AirVisual:

$ cd ya mwangaza

Kutoka hapa, utaweza kufikia faili ya chatu ambayo tutatumia kuunda dashibodi yetu ya hali ya hewa. Tunahitaji kufanya mabadiliko kwenye faili kabla ya kuiendesha. Ili kufungua faili ya chatuu, tumia amri ya nano kufungua kihariri cha maandishi:

Usafi wa $ nano.py

Mara tu kihariri cha maandishi kikiwa wazi, utaona yafuatayo karibu na juu ya hati yako:

# --------- Mipangilio ya Mtumiaji ---------

LATITUDE = "LAT" LONGITUDE = "MUDA MREFU" AIRVISUAL_API_KEY = "MUONEKANO WA API YA HEWA" BUCKET_NAME = "Ubora wa Hewa" BUCKET_KEY = "aq1" ACCESS_KEY = "HALI YA KWANZA INAPATA MUHIMU" DAKIKA_BETWEEN_READS = 5 # -------- -------------------------

unahitaji kuingiza latitudo, longitudo, ufunguo wa API ya AirVisual, na ufunguo wa ufikiaji wa Jimbo la Awali. Kigezo cha MINUTES_BETWEEN_READS kitaweka mara ngapi hati yako itachagua API ya AirVisual kwa habari ya hali ya hewa. Dakika 5 wakati wa kutosha ili usipite juu ya simu yako 10, 000 ya API kwa kikomo cha mwezi. Kwa sababu ya upimaji wa muda mfupi, unaweza kuweka hii hadi dakika 0.5. Mara tu unapoweka vigezo vyako, salama na uondoe maandishi kuingia kwa kuandika Udhibiti + X. Sasa uko tayari kutumia hati yako:

usawa wa $ chatu.py

Ikiwa unataka kuacha maandishi haya bila kukatizwa kwa muda mrefu, unaweza kutumia amri ya nohup (hakuna hang-up) kama ifuatavyo:

$ nohup chatu usawa wa hewa.py &

Mara tu hii inapoanza nenda kwa Jimbo la Awali ili uone data yako. Dashibodi yako inapaswa kuangalia kitu kama picha hapa chini. Una eneo lako la GPS, thamani ya fahirisi ya ubora wa hewa yako, na uchafuzi wako mkuu.

Mapendekezo yangu yangebadilisha thamani yako ya AQI kuwa tile ya kupima. Pia, sogeza tiles karibu na ubadilishe ukubwa kama inahitajika. Ikiwa unatumia hii kwa dashibodi iliyoingizwa, unaweza kuzisogeza ili kutoshea kama inahitajika.

Ikiwa unaamua kutengeneza AQI yako kupima kipimo, unaweza kuweka kizingiti cha rangi kuwa sawa na chati ya fahirisi ya ubora wa hewa. Hii inakupa sasisho la mara moja juu ya wapi thamani ya AQI iko kwenye chati unapoangalia dashibodi yako. Unaweza kuongeza picha ya mandharinyuma kwenye dashibodi yako ili kuipa muktadha zaidi.

Kwa hivyo unayo kila kitu unachohitaji kuunda dashibodi ya ubora wa hewa. Lakini vipi ikiwa unataka kuongeza zaidi au kuongeza hii kwenye dashibodi ya hali ya hewa ambayo tayari umeunda? Ikiwa ndio kesi basi endelea kusoma!

Hatua ya 5: Tengeneza Dashibodi ya Hali ya Hewa Jumla

Tengeneza Dashibodi ya Hali ya Hewa Jumla
Tengeneza Dashibodi ya Hali ya Hewa Jumla

Je! Data ya ubora wa hewa haitoshi kwako? Kweli kuna chaguzi nyingi za kuongeza zaidi kwenye dashibodi yako au kusambaza data hii kwenye dashibodi ya hali ya hewa ambayo unayo tayari!

Tiririsha Hali ya Hewa na Ubora wa Hewa Kwenye Dashibodi Moja

Ikiwa tayari umetekeleza mradi wetu wa DarkSky API au Mradi wa Dashibodi ya Hali ya Hewa ya Mitaa, unaweza kuongeza data hii ya hali ya hewa kwenye dashibodi yako iliyopo. Ni rahisi sana, unachohitaji kufanya ni kubadilisha vigezo vyako kwenye hati ya hali ya hewa kuwa na jina la ndoo sawa, ufunguo wa ndoo, na ufunguo wa ufikiaji kama vile ulivyotumia kwenye dashibodi yako ya hali ya hewa. Hii itaruhusu data kutumwa kwenye dashibodi hiyo hiyo. Sasa utakuwa na dashibodi ya hali ya hewa ya jumla!

Kuwa na Faili yako ya Chatu ya hali ya hewa Piga simu ili kuendesha faili ya Python ya Ubora wa Hewa

Chaguo jingine ikiwa hautaki kuendesha programu mbili tofauti ni kuweka faili ya chatu ya hali ya hewa katika saraka ya mradi wa hali ya hewa. Kuwa na mradi wa hali ya hewa chatu faili kupiga simu kwa faili ya hali ya hewa ili iendeshe wakati faili yako ya hali ya hewa inaendesha. Tena, hakikisha kuweka jina moja la ndoo, ufunguo wa ndoo, na ufunguo wa kufikia ili wakimbie kwenye dashibodi ile ile.

Unda Faili Moja na Hali ya Hewa na Ubora wa Hewa

Na ikiwa unajisikia ujasiri halisi, unaweza kuweka nambari ya hali ya hewa kwenye hati yako ya chatu ya hali ya hewa na uwe na hati moja tu ya kukimbia. Itahitaji juhudi zaidi ya kuweka alama zaidi kuliko chaguzi zingine mbili lakini inafanya mpango rahisi.

Tiririsha maelezo ya ziada kutoka kwa AirVisual API

Kama ulivyoona wakati tulipiga simu kwa API ya AirVisual, ina habari zaidi kuliko ubora wa hewa tu. Pia hutoa joto, unyevu, kasi ya upepo, mwelekeo wa upepo, na shinikizo la anga. Tunaweza kutuma habari hiyo kwa Jimbo la Awali kwa njia ile ile tuliyotuma nambari ya fahirisi ya ubora wa hewa na uchafuzi kuu. Inahitaji tu kuandika machache zaidi ikiwa ni taarifa.

Ilipendekeza: