Vývoj zařízení IoT

Tento přehled představuje klíčové koncepty vývoje zařízení, která se připojují k typickému řešení Azure IoT. Každá část obsahuje odkazy na obsah, který poskytuje další podrobnosti a pokyny.

Následující diagram znázorňuje základní zobrazení komponent v typickém řešení IoT. Tento článek se zaměřuje na zařízení a bránu zobrazenou v diagramu.

Diagram znázorňující architekturu řešení IoT vysoké úrovně, která zvýrazňuje oblasti připojení zařízení

Vývojář zařízení v Azure IoT napíše kód, který se spustí na zařízeních v řešení. Tento kód obvykle:

  • Vytvoří zabezpečené připojení ke koncovému bodu cloudu.
  • Odesílá telemetrii shromážděnou z připojených senzorů do cloudu.
  • Spravuje stav zařízení a synchronizuje tento stav s cloudem.
  • Reaguje na příkazy odeslané z cloudu.
  • Umožňuje instalaci aktualizací softwaru z cloudu.
  • Umožňuje zařízení dál fungovat při odpojení od cloudu.

Typy zařízení

Zařízení IoT je možné rozdělit do dvou širokých kategorií, mikrořadičů (MCU) a mikroprocesorů (MPU):

  • Jednotky MCU jsou levnější a jednodušší než jednotky MPU.
  • MCU obsahuje mnoho funkcí, jako jsou paměť, rozhraní a vstupně-výstupní operace na samotném čipu. MPU přistupuje k této funkci ze součástí podpůrných čipů.
  • McU často používá operační systém v reálném čase (RTOS) nebo spouští holý počítač (bez operačního systému) a poskytuje odpovědi v reálném čase a vysoce deterministické reakce na externí události. MpU obecně používají operační systém pro obecné účely, například Windows, Linux nebo macOS, který poskytuje nedeterministické odezvy v reálném čase. Obvykle neexistuje žádná záruka, kdy se úkol dokončí.

Mezi příklady specializovaného hardwaru a operačních systémů patří:

Windows for IoT je vložená verze Windows pro MPU s cloudovým připojením, která umožňuje vytvářet zabezpečená zařízení s jednoduchým zřizováním a správou.

Eclipse ThreadX je operační systém v reálném čase pro zařízení IoT a hraniční zařízení s využitím MCU. Eclipse ThreadX je navržený tak, aby podporovala vysoce omezená zařízení, která jsou napájená bateriemi a mají méně než 64 kB paměti flash.

Azure Sphere je zabezpečená platforma aplikací vysoké úrovně s integrovanými funkcemi komunikace a zabezpečení pro zařízení připojená k internetu. Skládá se ze zabezpečeného, propojeného, křížového MCU, vlastního operačního systému založeného na Linuxu a cloudové služby zabezpečení, která poskytuje nepřetržité a obnovitelné zabezpečení.

Primitiva

Zařízení Azure IoT může k interakci s cloudem použít následující primitivy:

  • Zprávy typu zařízení-cloud pro odesílání telemetrie časových řad do cloudu. Například data o teplotě shromážděná ze senzoru připojeného k zařízení.
  • Nahrávání souborů pro mediální soubory, jako jsou zachycené obrázky a video. Přerušovaně připojená zařízení můžou odesílat dávky telemetrie. Zařízení můžou komprimovat nahrávání, aby se ušetřila šířka pásma.
  • Dvojčata zařízení ke sdílení a synchronizaci stavových dat s cloudem Zařízení může například pomocí dvojčete zařízení hlásit aktuální stav ventilu, který řídí do cloudu a přijímat požadovanou cílovou teplotu z cloudu.
  • Digitální dvojčata , která představují zařízení v digitálním světě. Digitální dvojče může například představovat fyzické umístění zařízení, jeho schopnosti a vztahy s jinými zařízeními.
  • Přímé metody pro příjem příkazů z cloudu Přímá metoda může mít parametry a vrátit odpověď. Cloud může například za 30 sekund volat přímou metodu, která požádá zařízení o restartování.
  • Zprávy typu cloud-zařízení pro příjem jednosměrných oznámení z cloudu Například oznámení, že aktualizace je připravená ke stažení.

Další informace najdete v doprovodných materiálech ke komunikaci typu zařízení-cloud a pokyny ke komunikaci typu Cloud-zařízení.

Sady SDK pro zařízení

Sady SDK zařízení poskytují abstrakce vysoké úrovně, které umožňují používat primitivy bez znalosti základních komunikačních protokolů. Sady SDK zařízení také zpracovávají podrobnosti o vytvoření zabezpečeného připojení ke cloudu a ověření zařízení.

Pro zařízení MPU jsou sady SDK pro zařízení k dispozici pro následující jazyky:

Informace o zařízeních MCU najdete tady:

Ukázky a pokyny

Všechny sady SDK zařízení obsahují ukázky, které ukazují, jak se pomocí sady SDK připojit ke cloudu, odesílat telemetrii a používat další primitiva.

Web pro vývoj zařízení IoT obsahuje kurzy a návody, které vám ukážou, jak implementovat kód pro řadu typů zařízení a scénářů.

Další ukázky najdete v prohlížeči ukázek kódu.

Další informace o implementaci automatického opětovného připojení ke koncovým bodům najdete v tématu Správa opětovného připojení zařízení za účelem vytvoření odolných aplikací.

Vývoj zařízení bez sady SDK pro zařízení

I když se doporučuje použít některou ze sad SDK zařízení, můžou se zde vyskytovat scénáře, kdy nechcete. V těchto scénářích musí kód zařízení přímo používat jeden z komunikačních protokolů, které IoT Hub a služba Device Provisioning Service (DPS) podporují.

Další informace naleznete v tématu:

Modelování zařízení

IoT technologie Plug and Play umožňuje tvůrcům řešení integrovat zařízení IoT se svými řešeními bez jakékoli ruční konfigurace. Jádrem technologie Plug and Play IoT je model zařízení, který zařízení používá k inzerování svých schopností do aplikace s podporou technologie Plug and Play IoT, jako je IoT Central. Tento model je strukturovaný jako sada prvků, které definují:

  • Vlastnosti , které představují stav zařízení nebo jiné entity jen pro čtení nebo zápis. Například sériové číslo zařízení může být vlastností jen pro čtení a cílovou teplotou na termostatu může být zapisovatelná vlastnost.
  • Telemetrie, která jsou data vygenerovaná zařízením, ať už jsou data pravidelným proudem čtení snímačů, občasnou chybou nebo informační zprávou.
  • Příkazy , které popisují funkci nebo operaci, kterou je možné provést na zařízení. Například příkaz může restartovat bránu nebo pořídit snímek pomocí vzdálené kamery.

Tyto prvky můžete seskupit do rozhraní, abyste mohli opakovaně používat modely, aby se usnadnila spolupráce a urychlila vývoj.

Model je určen pomocí DTDL (Digital Twins Definition Language).

Použití ioT technologie Plug and Play, modelování a DTDL je volitelné. Primitiva zařízení IoT můžete použít bez použití technologie Plug and Play IoT nebo modelování. Služba Azure Digital Twins také používá modely DTDL k vytváření grafů dvojčat založených na digitálních modelech prostředí, jako jsou budovy nebo továrny.

Když jako vývojář zařízení implementujete ioT technologie Plug and Play zařízení, existuje sada konvencí, které je potřeba dodržovat. Tyto konvence poskytují standardní způsob implementace modelu zařízení v kódu pomocí primitiv dostupných v sadách SDK zařízení.

Další informace najdete v následujících tématech:

Kód kontejnerizovaného zařízení

Pokud ke spuštění kódu zařízení používáte kontejnery, například v Dockeru, můžete kód nasadit do zařízení pomocí funkcí infrastruktury kontejneru. Kontejnery také umožňují definovat prostředí runtime pro váš kód se všemi nainstalovanými požadovanými knihovnami a verzemi balíčků. Kontejnery usnadňují nasazování aktualizací a správu životního cyklu zařízení IoT.

Azure IoT Edge spouští kód zařízení v kontejnerech. Azure IoT Edge můžete použít k nasazení modulů kódu do zařízení. Další informace najdete v tématu Vývoj vlastních modulů IoT Edge.

Tip

Azure IoT Edge umožňuje více scénářů. Kromě spouštění kódu zařízení IoT v kontejnerech můžete pomocí Azure IoT Edge spouštět služby Azure na vašich zařízeních a implementovat brány polí. Další informace najdete v tématu Co je Azure IoT Edge?

Vývojářské nástroje

Následující tabulka uvádí některé z dostupných vývojových nástrojů IoT:

Nástroj Popis
Azure IoT Hub (rozšíření VS Code) Toto rozšíření VS Code umožňuje spravovat prostředky a zařízení ioT Hubu z VS Code.
Azure IoT Explorer Tento nástroj pro různé platformy umožňuje spravovat prostředky a zařízení ioT Hubu z desktopové aplikace.
Rozšíření Azure IoT pro Azure CLI Toto rozšíření rozhraní příkazového řádku obsahuje příkazy, jako az iot device simulateje například , az iot device c2d-messagea az iot hub monitor-events které vám pomůžou testovat interakce se zařízeními.

Další kroky

Teď, když jste viděli přehled vývoje zařízení v řešeních Azure IoT, patří několik navrhovaných dalších kroků: