Jste zde

Jak se rychle připojit a odesílat data přímo do cloudu?

Některé aplikace potřebují připojení ke cloudu nejen pro ukládání dat a vzdálený přístup, ale i k podrobné analýze. V cloudu probíhají výkonné algoritmy a sofistikované výpočty. Cílem tohoto článku je najít řešení pro nejúčinnější a nejbezpečnější připojení do cloudu.

Dozvíme se, jak používat vývojovou desku Google Cloud od společnosti Microchip Technology jako koncový bod senzoru pro připojení k platformě Cloud IoT od společnosti Google. To umožní desce ukládat data, která lze číst odkudkoli pomocí jednoduchého rozhraní založeného na webovém prohlížeči.

Začínáme s cloudem

Abychom mohli senzor připojit ke cloudu musíme mít cloudový server s požadovaným zabezpečeným připojením a softwarem. To vše poskytuje služba Google Cloud Platform (GCP). Microchip Technology zjednodušila celý vývojový proces poskytnutím veškerého potřebného software a hardware v podobě vývojové desky AC164160 AVR-IoT Cloud.

Obrázek 1: Vývojová deska Microchip AVR-IoT je koncový bod IoT, který lze použít k rychlému připojení projektu k serveru Google Cloud IoT. (Zdroj obrázku: Microchip Technology)

Provoz desky AVR-IoT

Deska je již nakonfigurována a připravena k připojení k serveru Google Cloud přes Wi-Fi. Po navázání spojení lze data ukládat a zobrazovat v reálném čase.

Komponenty desky byly vybrány s ohledem na nízkou spotřebu energie. To je ideální pro IoT zařízení napájené baterií. Obsahuje 8 bitový mikroprocesor ATMEGA4808-MFR pracující na frekvenci 20 MHz, který má běžnou spotřebu 8,5 mA. V pohotovostním režimu, kdy běží pouze hodiny reálného času (RTC) klesne spotřeba na 690 nA.

Mikroprocesor má k dispozici Flash paměť o velikosti 48 kB, 6 kB SRAM a 256 bajtů EEPROM. EEPROM se používá k ukládání dat o připojení Wi-Fi. ATMEGA4808 má mnoho periferií, včetně čtyř 16-bitových časovačů, tří USART, SPI rozhraní a analogového komparátoru, díky čemuž je vhodný pro Low-Power aplikace.

ATMEGA4808 se připojuje k Wi-Fi přes ATWINC1510-MR210UB1961 2,4 GHz 802.11 b / g / n IoT Wi-Fi modul (Obrázek 2), se kterým komunikuje pomocí sériového portu SPI. Wifi modul podporuje zabezpečení WEP, WPA a WPA2. Je vybaven integrovanou anténou, ale umožňuje připojit externí anténu, pokud je zapotřebí zvětšit dosah. Podporuje šifrované připojení protokolem TLS.

Obrázek 2: Wi-Fi modul WINC1510 má rozměry 21,7 mm x 14,7 mm a podporuje 2,4 GHz 802,11b/g/n. Komunikace s mikroprocesorem probíhá přes sériový port SPI. (Zdroj obrázku: Microchip Technology)

Napájecí napětí pro WINC1510 se může pohybovat od 2,7 V do 3,6 V a při běžném provozu odebírá proud 290 mA. Režim Doze vypne zařízení a uloží všechna nastavení. V tomto režimu je spotřeba modulu 380 µA,. To je užitečné pro Very Low Power aplikace, které zapínají a vypínají RF část, například beacon monitoring. WINC1510 je schopen se připojit k Wi-Fi za 150 ms. Interface k mikroprocesoru obsahuje osm pinů: čtyřvodičové SPI slave rozhraní a čtyři GPIO pro řídicí signály. Modul má všechny certifikace pro použití v Americe, Evropě a Asii. To značně zjednodušuje proces získávání FCC schválení konečného návrhu.

Deska AVR-IoT má rozměry 63,5 mm x 25,4 mm a připojuje se k počítači přes USB kabel, ze kterého je i napájen. Podporuje všechny operační systémy - Windows, Linux a MacOS. Po zapnutí budou na desce čtyři LED diody (modrá, zelená, žlutá a červená) blikat v pořadí od leva doprava dvakrát. To znamená, že deska pracuje správně.

Deska se na počítači zobrazí jako Flash disk a zobrazí se pět souborů. Pro připojení k internetu stačí kliknout na soubor pojmenovaný CLICK-ME.HTM. Tím se vyvolá stránka ve výchozím prohlížeči, která umožňuje nastavit připojení k místní síti Wi-Fi (Obrázek 3).

Obrázek 3: Deska Microchip AVR-IoT se připojí k místní síti Wi-Fi kliknutím na soubor CLICK-ME.HTM. Konfigurace sítě se provede ve spodní části vlevo (Zdroj obrázku: Microchip Technology)

Po zadání názvu sítě, výběru typu sítě a zadání hesla se rozsvítí modrá LED dioda, která signalizuje, že deska je připojena k místní síti. Brzy poté se rozsvítí zelená LED dioda, která signalizuje, že deska je připojena k serveru Google Cloud. Pokaždé, když deska odešle data na server Google Cloud, bude blikat žlutá LED dioda. Všechny informace odeslané mezi serverem AVR-IoT a serverem Google Cloud jsou šifrovány.

Bezpečné připojení a šifrování dat

Internetová komunikace běží přes zabezpečené připojení, které je obvykle šifrováno pomocí Transport Layer Security (TLS). Je však stále možné, aby hacker našel chybu v šifrovaném spojení a zachytil data spuštěním útoku nazvaného „man-in-the-middle attack“. Man In The Middle (MITM) je druh útoku na bezpečnost uživatele, při kterém útočník potají zasahuje do komunikace mezi dvěma subjekty, a to tak aby věřili že komunikují pouze spolu. Aby se zabránilo tomuto útoku musí být data také šifrována, obvykle pomocí šifrování AES nebo SHA.

Pro šifrování dat přenášených na Google Cloud je AVR-IoT dodáván s čipem ATECC608A-MAHCZ-T Security CryptoAuthentication, který je propojen s mikrokontrolérem AVR přes rozhraní I2C. ATECC608A je šifrovací paměť, která podporuje řadu šifrovacích standardů, včetně AES-128 a SHA-256. Používá se k ukládání veřejných a soukromých klíčů používaných pro komunikaci se serverem Google Cloud.

Každý ATECC608A v každém AVR-IoT má uložen vlastní unikátní veřejný a soukromý klíč přímo od  Microchip Technology. Soukromý klíč v ATECC608A je v bezpečném úložišti a nemůže být odhalen, i když je rozhraní I2C monitorováno a zaznamenáno pomocí logického analyzátoru. Veřejný klíč je zobrazen v URL adrese odeslané do služby Google Cloud a je také v souboru PUBKEY.TXT, který lze přečíst rozhraním USB hostitelského počítače připojeného k zařízení AVR-IoT. Podrobný provoz ATECC608A je k dispozici u společnosti Microchip Technology pouze na základě dohody o mlčenlivosti.

Firmware v mikrokontroléru ATMEGA4808 v AVR-IoT je nakonfigurován tak, aby efektivně využíval bezpečnostní funkce ATECC608A pro komunikaci s Google Cloud. Díky tomu jsou podrobnosti o kryptografických funkcích ATECC608A pro vývojáře většinou transparentní, což značně zjednodušuje a urychluje vývoj. ATECC608A chrání jak aplikaci, tak i sama sebe.

Je vysoce odolný vůči fyzickému „hackování“ a dokáže detekovat a chránit před mnoha útoky například použitím extrémního chladu. Může také detekovat pokusy o zásah do zařízení, aby byla prozkoumána jeho vnitřní architektura. Obsah interní paměti zařízení je také šifrován. ATECC608A obsahuje důvěrné bezpečnostní mechanismy, které jsou známy pouze technikům Microchip Technology.

Práce se serverem Google Cloud IoT

Po připojení AVR-IoT k serveru Google Cloud IoT začne výměna dat. AVR-IoT obsahuje čidlo intenzity osvětlení a čidlo teploty. Data z těchto senzorů jsou posílána na server Google Cloud a mohou být zobrazena v reálném čase (Obrázek 4). Chcete-li zobrazit data z libovolného prohlížeče, stačí zadat následující adresu URL:

avr-iot.com/device/{publickey}

Kde {publickey} je veřejný klíč přiřazený desce AVR-IoT.

Použitý server Google Cloud je demo sandbox účet, takže data odeslaná z AVR-IoT do Google Cloud nejsou trvale uložena a jsou ihned vymazána, jakmile je spojení se serverem přerušeno.

Obrázek 4: Webová stránka obsluhovaná serverem Google Cloud IoT zobrazuje data senzoru teploty a intenzity světla, které jsou na desce AVR-IoT. (Zdroj obrázku: Microchip Technology)

AVR-IoT obsahuje instrukce pro upgrade na soukromý účet Google Cloud. Se soukromým účtem služby Google Cloud můžete trvale ukládat informace do této služby pro pozdější použití. Jednoduše lze také vytvořit webové rozhraní na privátním serveru Google Cloud, který může komunikovat s AVR-IoT. To umožňuje webovému rozhraní hostovat online aplikace, které mohou odesílat příkazy do firmwaru na desce. Například lze ovládat kterýkoliv z GPIO pinů na ATmega4808 odkudkoliv na světě.

Závěr

I když existuje mnoho knih a webových stránek, které vysvětlují připojení a ukládání dat do cloudu, praktická ukázka je vždy nejcennější. Deska Microchip AVR-IoT umožňuje snadné připojení ke cloudu a zároveň ukazuje základy cloudového úložiště, šifrování a kontroly koncového bodu IoT.

Článek vyšel v originále "How to Quickly Connect and Send IoT Data Straight to the Cloud and Access it Remotely" na webu DigiKey.com, autorem je Bill Giovino

Hodnocení článku: