Úvod
Sestavování a spouštění aplikace na IoT (Internet věcí) zařízeních mikrořadičů může být poměrně náročné. Překážky mohou být různé – od komplikovanosti vývoje až po bezpečné zachycení a přenos dat na server.
Azure Sphere umožňuje vytvářet řešení IoT, která jsou ve výchozím nastavení zabezpečená, a vy máte jistotu, že je chráněné vaše zařízení, vaše aplikace i data během přenosu.
Aplikace můžete sestavovat pomocí sady Visual Studio nebo Visual Studio Code, případně je integrovat s existujícími sadami nástrojů v systémech Windows a Linux. Vývojová prostředí pro Visual Studio a Visual Studio Code poskytují integrované ladicí programy mikrořadičů a úplnou správu zdrojového kódu, jakož i nástroje pro spolupráci a produktivitu.
Co je Azure Sphere
Azure Sphere je komplexní řešení zabezpečení IoT – včetně hardwaru, operačního systému a cloudových komponent – k aktivní ochraně vašich zařízení, firmy a zákazníků.
Azure Sphere se skládá z následujících komponent:
- Certifikované čipy Azure Sphere od hardwarových partnerů mají integrovanou technologii zabezpečení Microsoftu, která nabízí připojení a spolehlivý hardwarový důvěryhodný kořenový certifikát.
- Operační systém Azure Sphere přidáním vrstvy ochrany a průběžné aktualizace zabezpečení vytváří důvěryhodnou platformu pro nové prostředí IoT.
- Služba zabezpečení Azure Sphere zprostředkovává důvěryhodnou komunikaci zařízení-cloud, detekuje hrozby a obnovuje zabezpečení zařízení.
Dohromady tyto komponenty implementují sedm vlastností vysoce zabezpečených zařízení.
Architektura Azure Sphere
Mikrořadič (MCU) Azure Sphere má tři jádra přístupná pro vývojáře – Cortex-A7, na kterém běží jádro Linuxu, a dvě jádra Cortex-M4, která umí spustit holý kód nebo operační systém v reálném čase, jako je například Azure RTOS nebo FreeRTOS.
Aplikace vysoké úrovně běžící na linuxovém jádru Cortex-A7 se používají pro úkoly méně náročné na časování, jako je vytváření síťových připojení, zajišťování zabezpečení, aktualizace stavu zařízení, komunikace s aplikacemi jádra v reálném čase a posílání zpráv telemetrie do cloudových bran, jako je IoT Hub.
Vývojářské nástroje
Aplikace Azure Sphere můžete vyvíjet v systémech Windows a Linux. Ve Windows můžete použít buď sadu Visual Studio 2019 nebo novější (bezplatné vydání Community Edition nebo vyšší) nebo Visual Studio Code. V systému Linux se používá Visual Studio Code. Můžete souběžně vyvíjet a ladit aplikace provozované na všech třech jádrech.
V tomto výukovém modulu se soustředíme na vývojáře v systémech Linux a Windows, kteří používají Visual Studio Code. Pokud jste uživatelem Windows a používáte aplikaci Visual Studio, použijte Visual Studio a vezměte na vědomí, že snímky integrovaného vývojového prostředí, které jsou součástí tohoto modulu, se budou lišit.
Monitorování a řízení prostředí laboratoře pro citlivé mikrobiologické experimenty
Předpokládejme, že jste vědec v mikrobiologické laboratoři, který je zodpovědný za ukládání vzorků z testů. Chcete vytvořit systém, který bude v reálném čase monitorovat prostředí kolem laboratorního vybavení. Tento systém bude monitorovat následující podmínky v místnosti:
- Tlak
- Teplota
- Vlhkost
Tyto hodnoty byly dříve v pravidelných intervalech ručně zaznamenány laboratorními asistenty pomocí senzorů. Ruční zaznamenávání okolních podmínek je únavná práce, při které může navíc dojít k lidské chybě. Jakékoli problémy se senzory by zneplatnily testy provedené v laboratorním prostředí.
Pro práci v laboratoři je zásadní udržování přesných podmínek v místnosti. Laboratoř musí udržovat správné podmínky, aby bylo možné dosáhnout přesnějších výsledků. Jakákoli změna podmínek může ovlivnit teplotu laboratorního vybavení během skladování vzorků a laboratorního vybavení a manipulace s nimi. To by mohlo mít dopad na schopnost dosahovat správných a stabilních výsledků a také to může ekonomicky ovlivnit danou organizaci.
Návrh nového systému
Návrh nového systému musí zohledňovat následující:
- Senzory budou v testovacím prostředí na několika místech.
- Systém musí být zabezpečený proti útokům, protože některé experimenty jsou komerčně citlivé a nákladné.
- Tyto senzory budou v definovaných intervalech automatizovat odečet tlaku vzduchu, teploty a vlhkosti.
- Data senzorů ze zařízení budou bezpečně přenášena za účelem analýzy trendů dat.
- Systém umí řídit jednotku topení, ventilace a klimatizace (TVK), aby mohl automaticky přizpůsobit prostředí podle požadavků na laboratorní experimenty.
- Systém je dostatečně flexibilní pro podporu budoucích citlivějších laboratorních senzorů.
Řešení musí být postavené na platformě IoT, která je vysoce zabezpečená a chráněná před útoky a softwarovými chybami. Kromě toho systém dokáže spustit alarm nebo aktivovat odeslání výstražné zprávy příslušné oprávněné osobě, když některý z definovaných parametrů přesáhne rozsah prahových hodnot.
Cíle výuky
V tomto modulu:
- Vytvoření aplikace Azure IoT Central
- Konfigurace aplikace Azure Sphere pro Azure IoT Central
- Sestavení a nasazení aplikace Azure Sphere
- Zobrazení dat prostředí na řídicím panelu Azure IoT Central
- Řízení aplikace Azure Sphere pomocí vlastností a příkazů Azure IoT Central
- Nasazení nového citlivějšího prostorového senzoru do jádra Azure Sphere v reálném čase běžícím na Azure RTOS
- Čtení dat z nového senzoru běžícího na jádru v reálném čase a odesílání těchto dat do IoT Central
Předpoklady
- Sada Azure Sphere
- Nainstalovaný nástroj Visual Studio Code na vašem počítači
- Znalost práce s nástrojem Visual Studio Code
- Nainstalovaný Git na vašem počítači
- Znalost práce s Gitem/GitHubem
- Základní znalost Azure Sphere
- Základní znalost Azure IoT