Мазмұны:

AirVisual Air Quality API бақылау тақтасы: 5 қадам
AirVisual Air Quality API бақылау тақтасы: 5 қадам

Бейне: AirVisual Air Quality API бақылау тақтасы: 5 қадам

Бейне: AirVisual Air Quality API бақылау тақтасы: 5 қадам
Бейне: Stream Air Quality with Air Visual API | GIT TECH'D 2024, Шілде
Anonim
Image
Image

AirVisual (https://www.airvisual.com) - бүкіл әлем бойынша ауа сапасы туралы мәліметтерді беретін веб -сайт. Оларда бақылау тақтасына жіберу үшін ауа сапасы туралы мәліметтерді алу үшін қолданылатын API бар. Біз осы API -мен ауа райы бақылау тақтасындағыдай әрекет етеміз.

Бұл сізге API қолдануды үйрететін қарапайым жоба. Бастайық!

1 -қадам: Жұмысты бастау

AirVisual API
AirVisual API

Біз кодтың көп бөлігін жинап қойдық, бірақ сізге жол бойында бірнеше түзетулер енгізу қажет болады. Біз жасаған істерді кеңейтуге көптеген мүмкіндіктер бар.

Біз сіз үшін дайындаған барлық заттарды алу үшін сізге GitHub репозиторийін клондау қажет. GitHub - бұл осындай жобаларды сақтауға, қайта қарауға және басқаруға мүмкіндік беретін керемет қызмет. Сіз бұл сценарийді арнайы құрылғыда іске қосқыңыз келеді. Сіз ноутбукты, Raspberry Pi немесе басқа бір тақталы компьютерді пайдалана аласыз. Репозиторийді клондау үшін біздің компьютердің немесе Pi терминалына кіріп, мына пәрменді теріңіз:

$ git клоны

Енгізу түймесін басыңыз және сіз бұл ақпаратты көресіз:

$ git clone https://github.com/InitialState/airvisual.git «Авиавизуальды» клондау… қашықтан басқару: объектілерді санау: 13, дайын. қашықтан басқару: объектілерді санау: 100% (13/13), орындалды. қашықтан басқару: объектілерді қысу: 100% (12/12), дайын. қашықтан басқару: Барлығы 13 (дельта 2), қайта қолданылған 0 (дельта 0), қайта оралған 0 Объектілерді орау: 100% (13/13), дайын.

Сіз мұны көргеннен кейін құттықтаймыз, сіз GitHub Repo -ны сәтті көшірдіңіз және бұл жобаны құруға қажетті барлық файлдар бар. Жаңа каталогқа көшейік. Каталогты өзгерту үшін сізге тек «cd» теру керек, содан кейін барғыңыз келетін каталогтың атын теру керек. Бұл жағдайда біз мынаны жазамыз:

$ cd әуе кемелері

Енгізуді басқаннан кейін, біз қазір әуе визуалды каталогында екенімізді көресіз. Біз орнатқан файлдарды көру үшін «ls» тереміз. Сізге келесідей нәрсе көрінуі керек:

LICENSE README.md airquality.py

Кодты өңдеуден бұрын бізге басқа элементтер қажет, сондықтан келесіде Air Quality API -ге қарайық.

2 -қадам: AirVisual API

AirVisual API
AirVisual API
AirVisual API
AirVisual API

AirVisual -де ауа сапасы (AQI) мен ластану API бар, ол айына 10 000 -ға дейін API қоңырауларын ақысыз береді. Сіз қауымдастық деңгейіне жазыла аласыз. Тіркелгеннен кейін My Air мен API қойындысына өтуге болады. Дәл осы жерде сіз API кілттері мен API құжаттамасын таба аласыз.

Бірінші API кіру кілтін жасау үшін +Жаңа кілт түймесін басыңыз. Жоспарды таңдау үшін, ашылмалы мәзірді пайдаланып Қауымдастықты таңдап, Жасау түймешігін басыңыз. Егер бәрі ойдағыдай болса, сіз сәттілік туралы хабарды көресіз және жаңа кілт ақпаратын табу үшін API бақылау тақтасына оралуға болады. Негізгі мән (сандар мен таңбалар) - бұл жобаға қажет нәрсе. Егер сіз API құжаттамасымен таныссаңыз, сіз жасай алатын API қоңырауларының көптеген түрлері бар екенін көресіз. Бұл жоба үшін біз GPS координаттары негізінде ең жақын қала деректерін алғымыз келеді. Бұл қоңырау үшін сізге бойлық, ендік және API кілті қажет. Төмендегі қоңырауға осы параметрлерді енгізіңіз, оны браузердегі мекенжай жолағына енгізіңіз және enter пернесін басыңыз.

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

Бұл GPS координаттарына негізделген жақын қаланың деректерін қайтарады. Бұл келесідей болады:

{«status»: «сәттілік», «data»: {«city»: «Nashville», «state»: «Tennessee», «country»: «USA», «location»:

{«type»: «Point», «coordinates»: [-86.7386, 36.1767]}, «ағымдағы»: {«ауа райы»: {«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}, «ластану»: {«ts»: «2019-04-08T18: 00: 00.000Z», « aqius «: 10,» mainus «:» p2 «,» aqicn «: 3,» maincn «:» p2 «}}}}

Деректерді жақсы көру үшін JSON форматтаушысын қолдануды ұсынамын. Егер сіз оны қолдансаңыз, ол оның орнына сәл ұқсас болады:

«status»: «сәттілік», «data»: {«city»: «Nashville», «state»: «Tennessee», «country»: «USA», «location»: {«type»: «Point», «coordinates»: [-86.7386, 36.1767]}, «ағымдағы»: {«ауа райы»: {«ts»: «2019-04-08T19: 00: 00.000Z», «_v»: 0, «createdAt»: «2019-04-08T19: 04: 18.662Z «,» ху «: 88,» ic «:» 04d «,» pr «: 1012,» tp «: 18,» updatedAt «:» 2019-04-08T19: 46: 53.140Z «,» wd «: 90, «ws»: 3.1}, «ластану»: {«ts»: «2019-04-08T18: 00: 00.000Z», «aqius»: 10, «mainus»: «p2», «aqicn»: 3, «maincn»: «p2»}

Біз қазір орналасқан жеріміз, ауа райы мен ластану туралы ақпарат бар екенін оңай көре аламыз. Біз осы жобаға назар аударатын екі құндылық - АҚШ -тың ауа сапасының индексі (aquis) және негізгі ластаушы (mainus). Ауа сапасының индексінің мәні бізге жергілікті ауа сапасының мәні не екенін және бұл сіздің денсаулығыңызға қалай әсер ететінін айтады. Түсті кодталған диаграмма төменде. Негізгі ластаушы сізге ауаның негізгі ластаушысы не екенін айтады (бөлшектер, азот оксиді, озон, көміртегі тотығы, күкірт оксиді). Бұл ластаушы заттар әдетте түтін немесе автокөлік шығарындыларының қосалқы өнімдері болып табылады.

Енді біз Air Visual API -ні қалай қолдану керектігін білетін болсақ, бізге келесі нәрсе - деректерді көрсетуге арналған бақылау тақтасы платформасы.

3 -қадам: бастапқы күй

Бастапқы күй
Бастапқы күй
Бастапқы күй
Бастапқы күй

Біз ауа райы туралы барлық ақпаратты бұлт қызметіне жібергіміз келеді және бұл қызмет біздің деректерді жақсы бақылау тақтасына айналдырады. Біздің деректер баратын жерді қажет етеді, сондықтан біз бастапқы күйді осы мақсат ретінде қолданамыз.

Бастапқы мемлекеттік шотқа тіркелу

Https://iot.app.initialstate.com сайтына өтіп, жаңа тіркелгі жасаңыз.

ISStreamer орнатыңыз

Бастапқы күй Python модулін ноутбукке немесе Raspberry Pi -ге орнатыңыз. Пәрмен жолында келесі пәрменді іске қосыңыз:

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

Автомобиль жасаңыз

Curl пәрменін орындағаннан кейін сіз экранға келесі шығысқа ұқсас нәрсені көресіз:

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

Құпия сөз: ISStreamer Python оңай орнатудың басталуы! Орнатуға бірнеше минут кетуі мүмкін, кофе алыңыз:) Бірақ қайтып оралуды ұмытпаңыз, менде сұрақтар болады! Easy_install табылды: setuptools 1.1.6 Табылған pip: pip 1.5.6 from /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip негізгі нұсқасы: 1 pip шағын нұсқасы: 5 ISStreamer табылды, жаңартылуда … Талап қазірдің өзінде жаңартылған: ISStreamer /Library/Python/2.7/site-packages ішінен тазаланады… Сіз автоматты түрде мысал сценарийін алғыңыз келе ме? [y/N] Мысалды қайда сақтағыңыз келеді? [әдепкі:./is_example.py] Сіз қолданатын бастапқы күй бағдарламасын таңдаңыз: 1. app.initialstate.com 2. [ЖАҢА!] iot.app.initialstate.com 1 немесе 2 таңдауды енгізіңіз: iot.app енгізіңіз.initialstate.com пайдаланушы аты: iot.app.initialstate.com құпия сөзін енгізіңіз:

Мысал сценарийін автоматты түрде алу сұралғанда, y деп теріңіз. Бұл бастапқы күйге деректерді жібере алатындығымызды қамтамасыз ету үшін іске қосылатын тест сценарийін жасайды. Келесі нұсқаулықта мысал файлын қайда сақтағыңыз келетіні сұралады. Теңшелетін жергілікті жолды енгізуге немесе әдепкі орынды қабылдау үшін enter пернесін басуға болады. Соңында, сізден қандай бастапқы мемлекет қолданатыны сұралады. Егер сіз жақында есептік жазба жасасаңыз, 2 -ші опцияны таңдаңыз, содан кейін пайдаланушы аты мен құпия сөзді енгізіңіз. Осыдан кейін орнату аяқталады.

Кіру кілттері

Сценарийдің үлгісін қарастырайық. $ nano is_example.py 15 -жолда сіз streamer = Streamer (bucket_… деп басталатын жолды көресіз. Бұл жолдар «Python Stream Example» деп аталатын және сіздің есептік жазбаңызбен байланысты жаңа деректер пакетін жасайды. Бұл байланыс байланысты access_key =”…” параметрі сол жолда. Әріптер мен сандардың ұзақ тізбегі - бұл сіздің бастапқы күйге кіру кілті. Егер сіз веб -шолғышта бастапқы күйге кірсеңіз, жоғарғы оң жақтағы пайдаланушы атыңызды шертіңіз, содан кейін өтіңіз. «Менің параметрлеріме» сіз сол кіру кілтін беттің төменгі жағында «Ағындық кіру кілттері» бөлімінен таба аласыз. Деректер ағынын жасаған сайын, бұл кілт сол ағынды сіздің есептік жазбаңызға бағыттайды (сондықтан кілтпен бөлісіңіз).

ExampleRun іске қосыңыз, біз сіздің бастапқы күй тіркелгіңізге деректер ағынын жасай алатындығымызға көз жеткізу үшін. Пәрмен жолында келесіні орындаңыз:

$ python is_example.py

Мысал деректері

Веб -шолғышта бастапқы күйге қайтып оралыңыз. «Python ағынының мысалы» деп аталатын жаңа деректер шелегі сөреде сол жақта пайда болуы керек еді (бетті жаңарту қажет болуы мүмкін). Деректерді көру үшін осы шелекті басыңыз.

Енді сіз AirVisual API -ден нақты деректерді жіберуді бастауға дайынсыз.

4 -қадам: Ауа сапасының бақылау тақтасы

Ауа сапасының бақылау тақтасы
Ауа сапасының бақылау тақтасы
Ауа сапасының бақылау тақтасы
Ауа сапасының бақылау тақтасы
Ауа сапасының бақылау тақтасы
Ауа сапасының бақылау тақтасы
Ауа сапасының бақылау тақтасы
Ауа сапасының бақылау тақтасы

Енді көңілді бөлікке. Біз AirVisual API -ні қолдана отырып, ауаның сапасын бақылау тақтасын құруға және ауаның ластануы туралы деректерді қай жерде таңдасақ та алуға дайынбыз. Бұл airquality.py сценарийі сіздің API кілтіңізді пайдаланып AirVisual API -ге қоңырау шалады және ауаның ластануы туралы ағымдағы ақпаратты алады. Ол сондай -ақ бұл деректерді сіздің бастапқы күйдегі есептік жазбаңызға жібереді, бұл сізге ауа сапасының бақылау тақтасын жасауға мүмкіндік береді.

Сіз сценарийге бұрын клондаған Github репозиторийі арқылы қол жеткізе аласыз. Біріншіден, біз AirVisual каталогында екенімізге көз жеткізуіміз керек:

$ cd әуе кемелері

Осы жерден сіз ауа сапасы бақылау тақтасын жасау үшін біз іске қосатын питон файлына кіре аласыз. Біз файлды іске қоспас бұрын оған кейбір өзгерістер енгізуіміз керек. Python файлын ашу үшін nano пәрменін қолданып мәтіндік редакторды ашыңыз:

$ nano airquality.py

Мәтіндік редактор ашылғаннан кейін сіз сценарийдің жоғарғы жағында келесі ақпаратты көресіз:

# --------- Пайдаланушы параметрлері ---------

LATITUDE = «LAT» LONGITUDE = «ҰЗЫН» AIRVISUAL_API_KEY = «AIR VISUAL API KEY» BUCKET_NAME = «Жергілікті ауа сапасы» BUCKET_KEY = «aq1» ACCESS_KEY = «МЕМЛЕКЕТТІК БАСТЫ КІЛТТЕР» MINUTUTES_BETWEEN --_5- # -------------------------

ендік, бойлық, AirVisual API кілті мен бастапқы күйге кіру кілтін енгізу қажет. MINUTES_BETWEEN_READS параметрі сіздің сценарийіңіз ауа сапасы туралы ақпарат алу үшін AirVisual API интерфейсін қаншалықты жиі сұрайтынын анықтайды. 5 минут жеткілікті, осылайша сіз айына 10 000 API қоңырауларынан асып кетпейсіз. Қысқа мерзімді тестілеу үшін оны 0,5 минутқа қоюға болады. Параметрлер енгізілгеннен кейін Control+X пернелер тіркесімін енгізу арқылы енгізілген мәтінді сақтап, шығыңыз. Енді сіз сценарийді іске қосуға дайынсыз:

$ python airquality.py

Егер сіз бұл сценарийді ұзақ уақыт бойы үзіліссіз қалдырғыңыз келсе, nohup пәрменін (ілінбеу) келесідей пайдалана аласыз:

$ nohup python airquality.py &

Бұл іске қосылғаннан кейін деректерді қарау үшін бастапқы күйге өтіңіз. Сіздің бақылау тақтаңыз төмендегі суретке ұқсас болуы керек. Сізде GPS орналасуы, ауа сапасының индексі және негізгі ластаушы бар.

Менің ұсынысым AQI мәнін өлшегіш тақтаға өзгерту. Сонымен қатар, тақтайшаларды жылжытыңыз және қажет болған жағдайда олардың өлшемін өзгертіңіз. Егер сіз мұны ендірілген бақылау тақтасы үшін қолдансаңыз, оларды қажеттілігіне қарай жылжытуға болады.

Егер сіз AQI мәнін өлшеуішке айналдыруды шешсеңіз, онда түс табалдырығын ауа сапасы индексінің диаграммасына ұқсас етіп орнатуға болады. Бұл сізге бақылау тақтасын тексерген кезде AQI мәнінің диаграммада қай жерде түсетіні туралы жедел жаңартуды береді. Бақылау тақтасына фондық суретті қосуға болады, оған қосымша контекст береді.

Сонымен, сізде ауа сапасын бақылау тақтасын жасау үшін қажет нәрсенің бәрі бар. Бірақ егер сіз мұны ауа райы бақылау тақтасына көбірек қосқыңыз келсе немесе қосқыңыз келсе ше? Егер солай болса, оқуды жалғастырыңыз!

5 -қадам: Ауа райы бақылау тақтасын жасаңыз

Жалпы ауа райы бақылау тақтасын жасаңыз
Жалпы ауа райы бақылау тақтасын жасаңыз

Сізге ауа сапасы туралы мәліметтер жеткіліксіз бе? Бақылау тақтасына қосымша қосу немесе бұл деректерді ауа райы бақылау тақтасына ағынмен жіберудің көптеген нұсқалары бар!

Ауа райы мен ауа сапасын бір бақылау тақтасына апарыңыз

Егер сіз DarkSky API немесе Hyper-Local Weather Dashboard жобасын іске асырған болсаңыз, бұл ауа сапасы туралы деректерді қолданыстағы бақылау тақтасына қосуға болады. Бұл өте қарапайым, сізге ауа сапасының сценарийіндегі параметрлерді өзгерту, ауа райының бақылау тақтасында қолданылған шелектің аты, шелек кілті және кіру кілті болуы керек. Бұл деректерді сол бақылау тақтасына жіберуге мүмкіндік береді. Енді сізде ауа райы бақылау тақтасы болады!

Ауа райы Python файлы бар, ауа сапасы Python файлын іске қосуға қоңырау шалыңыз

Егер сіз екі бөлек бағдарламаны іске қосқыңыз келмесе, басқа нұсқа - ауа сапасы бойынша питон файлын ауа райы жобасының каталогына қою. Ауа райы жобасы python файлына ауа райы файлына қоңырау шалыңыз, ол сіздің ауа райы файлыңыз жұмыс істеп тұрған кезде жұмыс істейді. Тағы да, сол бақылау тақтасына жүгіру үшін сол шелек атауын, шелек кілтін және кіру кілтін қойғаныңызға көз жеткізіңіз.

Ауа райы мен ауа сапасы бірдей бір файл жасаңыз

Егер сіз өзіңізді батыл сезінсеңіз, ауа сапасының кодының бір бөлігін ауа райының питон сценарийіне енгізе аласыз және оны іске қосу үшін бір ғана сценарий болуы мүмкін. Бұл басқа екі нұсқаға қарағанда кодтауды қажет етеді, бірақ ол жеңілдетілген бағдарламаны жасайды.

AirVisual API -ден қосымша ақпарат алыңыз

Біз AirVisual API -ге қоңырау шалған кезде көргеніңіздей, онда ауа сапасы туралы ғана емес, қосымша ақпарат бар. Ол сонымен қатар температураны, ылғалдылықты, желдің жылдамдығын, желдің бағытын және атмосфералық қысымды қамтамасыз етеді. Біз бұл ақпаратты бастапқы күйге ауа сапасының индексі мен негізгі ластаушыны қалай жіберген болсақ, жібере аламыз. Бұл сізге тағы бірнеше if операторларын жазуды талап етеді.

Ұсынылған: