Obsah:
- Krok 1: Začínáme
- Krok 2: AirVisual API
- Krok 3: Počáteční stav
- Krok 4: Hlavní panel kvality ovzduší
- Krok 5: Vytvořte přehled počasí
Video: Hlavní panel AirVisual Air Quality API: 5 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
AirVisual (https://www.airvisual.com) je webová stránka, která poskytuje údaje o kvalitě ovzduší po celém světě. Mají API, které použijeme k získání dat o kvalitě ovzduší k odeslání na řídicí panel. S tímto rozhraním API budeme interagovat podobně jako s řídicím panelem počasí.
Jedná se o jednoduchý projekt, který vás naučí používat API. Začněme!
Krok 1: Začínáme
Většinu kódu jsme již dali dohromady, ale budete na cestě potřebovat pár úprav. Existuje také mnoho příležitostí, jak rozšířit to, co jsme udělali.
Abyste získali všechny věci, které jsme pro vás připravili, budete muset klonovat úložiště z GitHubu. GitHub je úžasná služba, která nám umožňuje ukládat, revidovat a spravovat projekty jako je tento. Tento skript budete chtít spustit na vyhrazeném zařízení. Můžete použít notebook, Raspberry Pi nebo jiný jednodeskový počítač. Chcete -li klonovat úložiště, stačí přejít do terminálu našeho počítače nebo Pi a zadat tento příkaz:
$ git clone
Stiskněte Enter a uvidíte tyto informace:
$ git clone https://github.com/InitialState/airvisual.git Klonování do 'airvisual' … dálkové: Výčet objektů: 13, hotovo. vzdálený: Počítání objektů: 100% (13/13), hotovo. vzdálený: Komprese objektů: 100% (12/12), hotovo. dálkové ovládání: Celkem 13 (delta 2), opakovaně použito 0 (delta 0), opakovaně použito 0 Rozbalení objektů: 100% (13/13), hotovo.
Jakmile to uvidíte, pak gratulujeme, úspěšně jste naklonovali GitHub Repo a máte všechny soubory potřebné k vytvoření tohoto projektu. Přesuňme se do nového adresáře. Chcete -li změnit adresář, stačí zadat „cd“a poté zadat název adresáře, do kterého chcete přejít. V tomto případě napíšeme:
$ cd airvisual
Jakmile stiskneme klávesu Enter, uvidíte, že jsme nyní ve vzdušném adresáři. Napište „ls“, abychom zjistili, jaké soubory jsme nainstalovali. Měli byste vypadat takto:
LICENCE README.md airquality.py
Než budeme moci kód upravit, potřebujeme nějaké další položky, pojďme se tedy podívat na API pro kvalitu ovzduší.
Krok 2: AirVisual API
AirVisual má API pro kvalitu ovzduší (AQI) a znečištění, které umožňuje až 10 000 volání API měsíčně zdarma. Můžete se zaregistrovat do komunity. Jakmile se zaregistrujete, můžete přejít na stránku My Air a kartu API. Právě zde najdete své API klíče a dokumentaci k API.
Kliknutím na tlačítko +Nový klíč vytvoříte náš první přístupový klíč API. V části Vybrat plán použijte v rozevíracím seznamu komunitu a klikněte na Vytvořit. Pokud vše půjde dobře, zobrazí se zpráva o úspěchu a můžete se vrátit zpět na hlavní panel API a najít své nové klíčové informace. Klíčová hodnota (čísla a znaky) je to, co budete pro tento projekt potřebovat. Pokud si prostudujete dokumentaci API, uvidíte, že můžete provádět několik druhů volání API. Pro tento projekt chceme získat nejbližší data města na základě GPS souřadnic. Pro toto volání budete potřebovat svou zeměpisnou délku, šířku a klíč API. Zadejte tyto parametry do níže uvedeného hovoru, vložte jej do adresního řádku v prohlížeči a stiskněte klávesu Enter.
api.airvisual.com/v2/nearest_city?lat={{LATITUDE}}&lon={{LONGITUDE}}&key={{YOUR_API_KEY}}
Tím se vrátí data nejbližšího města na základě souřadnic GPS. Bude to vypadat nějak takto:
Doporučuji použít formátovač JSON, abyste získali lepší přehled o datech. Pokud to použijete, místo toho to bude vypadat trochu takto:
"status": "úspěch", "data": {"city": "Nashville", "state": "Tennessee", "country": "USA", "location": {"type": "Point", "coordinates": [-86.7386, 36.1767]}, "aktuální": {"počasí": {"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}, "znečistění": {"ts": "2019-04-08T18: 00: 00.000Z", "aqius": 10, "mainus": "p2", "aqicn": 3, "maincn": "p2"}
Nyní můžeme snadno vidět, že máme informace o poloze, počasí a znečištění. Dvě hodnoty, na které se v tomto projektu zaměřujeme, jsou Air Quality Index US (aquis) a Main Pollutant (mainus). Hodnota indexu kvality ovzduší nám říká, jaká je místní hodnota kvality ovzduší a jak to souvisí s vaším zdravím. Barevně odlišený graf je níže. Hlavní znečišťující látka nám říká, jaká je hlavní znečišťující látka ve vzduchu pro vaši oblast (částice, oxid dusičitý, ozon, oxid uhelnatý, oxid siřičitý). Tyto znečišťující látky jsou obvykle vedlejšími produkty kouřových komínů nebo emisí vozidel.
Nyní, když víme, jak používat rozhraní Air Visual API, další věc, kterou budeme potřebovat, je platforma pro zobrazení dat.
Krok 3: Počáteční stav
Chceme streamovat všechna naše data o počasí do cloudové služby a nechat tuto službu proměnit naše data v pěkný řídicí panel. Naše data potřebují cíl, takže jako cíl použijeme Počáteční stav.
Zaregistrujte se pro počáteční stav účtu
Přejděte na https://iot.app.initialstate.com a vytvořte si nový účet.
Nainstalujte ISStreamer
Nainstalujte modul Počáteční stav Python na svůj notebook nebo Raspberry Pi. Na příkazovém řádku spusťte následující příkaz:
$ / curl -sSL https://iot.app.initialstate.com -o -| sudo bash
Vyrobte si Automagic
Po spuštění příkazu zvlnění uvidíte na obrazovce něco podobného následujícímu výstupu:
$ / curl -sSL https://iot.app.initialstate.com -o -| sudo bash
Heslo: Začátek ISStreamer Python Snadná instalace! Instalace může trvat několik minut, dejte si kávu:) Ale nezapomeňte se vrátit, otázky budu mít později! Nalezeno easy_install: setuptools 1.1.6 Nalezeno pip: pip 1.5.6 z /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip major version: 1 pip minor version: 5 ISStreamer nalezen, aktualizace… Požadavek již aktuální: ISStreamer v /Library/Python/2.7/site-packages Čištění… Chcete automaticky získat ukázkový skript? [y/N] Kam chcete příklad uložit? [výchozí:./is_example.py] Vyberte prosím aplikaci, kterou používáte v počátečním stavu: 1. app.initialstate.com 2. [NOVINKA!] iot.app.initialstate.com Zadejte volbu 1 nebo 2: Zadejte iot.app.initialstate.com uživatelské jméno: Zadejte heslo iot.app.initialstate.com:
Po zobrazení výzvy k automatickému získání příkladu skriptu zadejte y. Tím se vytvoří testovací skript, který můžeme spustit, abychom zajistili, že budeme moci streamovat data do Počátečního stavu. Další výzva se zeptá, kam chcete uložit ukázkový soubor. Můžete buď zadat vlastní místní cestu, nebo stisknutím klávesy Enter přijmout výchozí umístění. Nakonec budete dotázáni, kterou aplikaci Počátečního stavu používáte. Pokud jste si nedávno vytvořili účet, vyberte možnost 2 a zadejte uživatelské jméno a heslo. Poté bude instalace dokončena.
Přístupové klíče
Podívejme se na ukázkový skript, který byl vytvořen. $ nano is_example.py Na řádku 15 uvidíte řádek, který začíná streamer = Streamer (bucket_…. Tyto řádky vytvoří nový datový kbelík s názvem „Python Stream Example“a je přidružen k vašemu účtu. Toto přidružení se děje kvůli access_key =”…” parametr na stejném řádku. Tato dlouhá řada písmen a číslic je váš přístupový klíč k účtu Počáteční stav. Pokud ve webovém prohlížeči přejdete na svůj účet Počáteční stav, klikněte vpravo nahoře na své uživatelské jméno a poté přejděte na „moje nastavení“, najdete stejný přístupový klíč ve spodní části stránky v části „Přístupové klíče streamování“. Pokaždé, když vytvoříte datový tok, tento přístupový klíč nasměruje tento datový tok do vašeho účtu (takže ne sdílet klíč s kýmkoli).
Spusťte testovací skript a ujistěte se, že můžeme vytvořit datový proud na váš účet Počáteční stav. Na příkazovém řádku spusťte následující:
$ python is_example.py
Příklad dat
Vraťte se ve webovém prohlížeči na svůj účet Počáteční stav. V levé části poličky v poli by se měl objevit nový datový segment s názvem „Příklad Python streamu“(možná budete muset stránku aktualizovat). Kliknutím na tento segment zobrazíte data.
Nyní jste připraveni začít streamovat skutečná data z rozhraní AirVisual API.
Krok 4: Hlavní panel kvality ovzduší
Nyní k zábavné části. Jsme připraveni začít používat rozhraní AirVisual API k vytvoření řídicího panelu kvality ovzduší a zachycování údajů o znečištění ovzduší, ať už se rozhodneme kdekoli. Tento skript airquality.py jednoduše zavolá rozhraní AirVisual API pomocí vašeho klíče API a načte aktuální informace o znečištění ovzduší. Také tato data streamuje na váš účet Počáteční stav, což vám umožní vytvořit řídicí panel kvality ovzduší.
Ke skriptu můžete přistupovat prostřednictvím úložiště Github, které jsme klonovali dříve. První věc, kterou musíme udělat, je zajistit, abychom byli v adresáři AirVisual:
$ cd airvisual
Odtud budete mít přístup k souboru python, který spustíme, abychom vytvořili náš řídicí panel kvality ovzduší. Než soubor spustíme, musíme v něm provést nějaké změny. Chcete -li otevřít soubor python, otevřete příkaz textový editor pomocí příkazu nano:
$ nano airquality.py
Jakmile je textový editor otevřený, v horní části skriptu uvidíte následující:
# --------- Uživatelské nastavení ---------
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_BET -------------------------
musíte zadat svou zeměpisnou šířku, délku, klíč API AirVisual a přístupový klíč počátečního stavu. Parametr MINUTES_BETWEEN_READS nastaví, jak často bude váš skript dotazovat API AirVisual na informace o kvalitě ovzduší. 5 minut dost času, abyste nepřekročili limit 10 000 volání API za měsíc. Kvůli krátkodobému testování to můžete nastavit na 0,5 minuty. Jakmile máte zadané parametry, uložte a ukončete zadávání textu stisknutím Ctrl+X. Nyní jste připraveni spustit skript:
$ python airquality.py
Chcete-li tento skript ponechat delší dobu bez přerušení, můžete použít příkaz nohup (žádné zavěšení) následujícím způsobem:
$ nohup python airquality.py &
Jakmile to bude spuštěno, přejděte do Počátečního stavu a zobrazte svá data. Váš řídicí panel by měl vypadat podobně jako na obrázku níže. Máte svoji polohu GPS, hodnotu indexu kvality ovzduší a hlavní znečišťující látku.
Moje doporučení by změnilo vaši hodnotu AQI na dlaždici měřidla. Také přesuňte dlaždice a změňte velikost podle potřeby. Pokud to používáte pro integrovaný řídicí panel, můžete je přesouvat, aby se vešly podle potřeby.
Pokud se rozhodnete, aby se vaše hodnota AQI stala měřidlem, můžete pak nastavit práh barvy tak, aby byl podobný grafu indexu kvality ovzduší. To vám poskytne okamžitou aktualizaci o tom, kde hodnota AQI spadá do grafu, když kontrolujete svůj řídicí panel. Na svůj řídicí panel můžete přidat obrázek na pozadí, aby měl více kontextu.
Máte tedy vše, co potřebujete k vytvoření palubní desky pro kvalitu vzduchu. Ale co když chcete přidat další nebo přidat toto na řídicí panel počasí, který jste již vytvořili? Pokud tomu tak je, pokračujte ve čtení!
Krok 5: Vytvořte přehled počasí
Nestačí vám data o kvalitě ovzduší? Existuje spousta možností, jak přidat další na svůj řídicí panel nebo streamovat tato data na řídicí panel počasí, který již máte!
Streamujte počasí a kvalitu vzduchu na jeden řídicí panel
Pokud jste již implementovali náš projekt DarkSky API nebo Hyper-Local Weather Dashboard, můžete tato data o kvalitě ovzduší přidat na svůj stávající řídicí panel. Je to docela jednoduché, vše, co musíte udělat, je změnit parametry ve skriptu kvality ovzduší tak, aby měl stejný název lopaty, klíč lopaty a přístupový klíč jako ten, který jste použili na palubní desce počasí. To umožní odeslání dat na stejný řídicí panel. Nyní budete mít celkový přehled počasí!
Požádejte svůj soubor Python o počasí o volání ke spuštění souboru Python pro kvalitu ovzduší
Další možností, pokud nechcete spouštět dva samostatné programy, je umístit soubor python kvality ovzduší do adresáře projektu počasí. Požádejte soubor python projektu počasí o volání souboru kvality ovzduší, aby se spustil, když je spuštěn váš soubor počasí. Opět nezapomeňte zadat stejný název segmentu, klíč segmentu a přístupový klíč, aby běžely na stejném řídicím panelu.
Vytvořte jeden soubor s kvalitou počasí i ovzduší
A pokud se cítíte opravdu odvážně, můžete do skriptu počasí python vložit část kódu kvality ovzduší a spustit pouze jeden skript. Bude to vyžadovat trochu více kódovacího úsilí než ostatní dvě možnosti, ale je to pro zjednodušený program.
Streamujte další informace z rozhraní AirVisual API
Jak jste viděli, když jsme volali do rozhraní AirVisual API, obsahuje více informací než jen kvalitu ovzduší. Poskytuje také teplotu, vlhkost, rychlost větru, směr větru a atmosférický tlak. Tyto informace můžeme odeslat do Počátečního stavu stejným způsobem, jakým jsme poslali hodnotu indexu kvality ovzduší a hlavní znečišťující látku. Vyžaduje pouze, abyste napsali několik dalších příkazů if.
Doporučuje:
Hlavní panel COVID-19 WHO: 8 kroků (s obrázky)
Hlavní panel WHO COVID-19: Tento návod ukazuje, jak pomocí ESP8266/ESP32 a LCD sestavit hlavní panel WHO v situaci COVID-19
Hlavní panel COVID19 na mapě světa (pomocí Pythonu): 16 kroků
Hlavní panel COVID19 na mapě světa (pomocí Pythonu): Vím, že téměř všichni víme většinu informací o COVID19. A tento návod je o vytvoření bublinové mapy pro vykreslení dat (případů) v reálném čase na mapě světa. „Program jsem přidal do úložiště Github: https: //github.co
Hlavní panel motocyklu Raspberry Pi: 9 kroků (s obrázky)
Hlavní panel motocyklu Raspberry Pi: Jako student Multimedia & Komunikační technologie v Howest Kortrijk, musel jsem vytvořit vlastní projekt IoT. To by spojilo všechny moduly sledované v prvním roce do jednoho velkého projektu. Protože ve svém volném čase hodně jezdím na motocyklu
Streamování dat z Tabulek Google na hlavní panel: 6 kroků
Streamujte data z Tabulek Google na řídicí panel: Tabulky vynikají při manipulaci s daty, ale při jejich nezobrazování. To je přesně důvod, proč se začalo objevovat tolik specializovaných společností pro vizualizaci dat a BI dashboard. Problém většiny těchto produktů spočívá v tom, že jsou obvykle drahé a
Hlavní panel teploty Lora: 5 kroků
Panel teploty Lora: Ve svém posledním Instructable jsem vám ukázal, jak připojit teplotní senzor k Lora přes TTN. Nyní vám ukážu, jak můžete tato data přečíst a ukázat je na hlavním panelu. Rovněž se budeme zabývat tím, jak používat data v IFTTT