Cvičení – připojení a streamování dat Azure Digital Twin k prostředkům větrné turbíny

Dokončeno

Služba Azure SignalR byla zpřístupněna jako součást šablony ARM, kterou jste nasadili. Tato služba a přidružená instalace vám umožní připojit se ke službě Azure Digital Twins. Vytvořili jsme datový kanál, který načítá data z digitálních dvojčat, která se abstrahuje z klientské aplikace, která běží v hybridní realitě.

Přehled služby Azure SignalR

Služba Azure SignalR zjednodušuje proces přidávání webových funkcí pracujících v reálném čase do aplikací přes HTTP. Tato funkce v reálném čase umožňuje službě nabízet aktualizace obsahu do připojených klientů, například jednu webovou stránku nebo mobilní aplikaci. V důsledku toho se klienti aktualizují bez nutnosti dotazovat server nebo odesílat nové požadavky HTTP na aktualizace. Jakýkoli scénář, který vyžaduje odesílání dat ze serveru do klienta v reálném čase, může používat službu Azure SignalR Service. Tradiční funkce v reálném čase, které často vyžadují dotazování ze serveru, můžou také používat službu Azure SignalR.

Službu Azure SignalR můžete snadno integrovat s dalšími službami Azure, což otevírá další možné scénáře. Azure Functions může například použít rozhraní REST API k nabízení oznámení službě Azure SignalR, která pak v reálném čase odešle data připojeným klientům. Služba Azure SignalR, která se používá se službou IoT Hub, umožňuje přenos dat snímačů v reálném čase do připojených klientů za účelem podpory scénářů monitorování v reálném čase.

Scénáře v reálném čase často obsahují vysokofrekvenční toky dat a velké množství souběžných připojení mezi klientem a serverem. K zprovoznění a zprovoznění funkcí vyžadují nastavení netriviální infrastruktury. Konfigurace této infrastruktury ve velkém měřítku je obtížná. Konfigurace obvykle vyžaduje logiku specifickou pro aplikaci v různých síťových vrstvách. Služba Azure SignalR tyto problémy zpracovává, takže se můžete zaměřit na logiku aplikace, která poskytuje prostředí připojená v reálném čase. Funkce v reálném čase můžete dynamicky škálovat a platit jenom za to, co používáte. Služba také dědí funkce služby Azure SignalR pro trvalá připojení přes různé přenosy.

Pro jakýkoli typ aplikace, který vyžaduje aktualizace obsahu v reálném čase, používala služba Azure SignalR Service. Tady je několik příkladů, které je vhodné použít službu Azure SignalR:

  • Aktualizace dat s vysokou frekvencí: hry, hlasování, hlasování a aukce
  • Řídicí panely a monitorování: řídicí panel společnosti, data finančního trhu, okamžitá aktualizace prodeje, panel vedoucích her pro více hráčů a monitorování IoT
  • Poloha v reálném čase na mapě: logistické sledování, sledování stavu doručení, aktualizace stavu dopravy a aplikace GPS
  • Cílené reklamy v reálném čase: přizpůsobené nabízené reklamy a nabídky v reálném čase a interaktivní reklamy
  • Aplikace pro spolupráci: spoluvytváření, aplikace tabule a software pro týmové schůzky
  • Nabízená oznámení: sociální síť, e-mail, hra a cestovní upozornění
  • Vysílání v reálném čase: živé vysílání zvuku nebo videa, živé titulky, překlad a události / vysílání zpráv
  • IoT a připojená zařízení: metriky IoT v reálném čase, vzdálené řízení, stav v reálném čase a sledování polohy
  • Automatizace: Trigger v reálném čase z upstreamových událostí

V případě použití větrné turbíny využívá komunikační vrstva mezi daty větrné turbíny Azure Digital Twins a zařízením hybridní reality službu Azure SignalR a klienta SignalR vloženým do aplikace hybridní reality.

Pokud chcete zpřístupnit data klientské aplikaci pomocí služby Azure Digital Twins, musíte se připojit ke službě Azure SignalR. Aplikace hybridní reality, kterou vytváříte, implementuje klienta SignalR pro připojení ke službě SignalR. Navázání komunikace mezi klientem SignalR a službou Azure SignalR vyžaduje, aby klient vyvolal negotiate funkci ve službě SignalR.

Nakonfigurujte parametry DeviceSimulator připojení Azure Digital Twins a podrobnosti ověřování zachycené v předchozím cvičení.

Získání přihlašovacích údajů aplikace

  1. Otevřete DeviceSimulator.sln v sadě Visual Studio a nakonfigurujte DeviceSimulator název hostitele pro typ prostředku Azure Digital Twins vytvořený šablonou ARM.

  2. Otevřete Azure_config_settings.txt textový soubor, který jste vytvořili v posledním cvičení, který obsahuje klíčové konfigurační parametry služby Azure Digital Twins pomocí textového editoru. Pokud relace PowerShellu zůstane aktivní, vyhledejte get-content výstup z příkazu.

  3. V souboru Azure_config_settings.txt nebo ve výstupu get-content příkazu v PowerShellu vyhledejte dvojici adtHostName klíč/hodnota klíče a zkopírujte hodnotu. Měl by vypadat nějak takto:

    https://myprojadtxxxxxxxxxx.api.eus.digitaltwins.azure.net
    

    Snímek obrazovky s rozhraním příkazového řádku se spuštěným příkazovým řádkem get-content

  4. V řešení Visual Studio DeviceSimulator otevřete soubor AzureIoTHub.cs v editoru poklikáním na soubor z Průzkumník řešení. Vložte hodnotu klíče adtHostName nebo páru zkopírované z kroku 2 do proměnné řetězce adtInstanceUrl .

    Snímek obrazovky s řešením Simulátor zařízení s přidanými hodnotami adresy URL a otevřeným souborem cs služby Azure IoT Hub a názvem hostitele a přidanými hodnotami adresy URL instance

Konfigurace simulátoru zařízení s primárním připojovací řetězec

DeviceSimulator Nakonfigurujte primární připojovací řetězec pro IoT Hub, který vytvořila šablona ARM.

Důležité

Tento modul obsahuje kroky pro připojení zařízení pomocí sdíleného přístupového podpisu, označovaného také jako ověřování symetrického klíče. Tato metoda ověřování je vhodná pro testování a vyhodnocení, ale ověřování zařízení pomocí certifikátů X.509 je bezpečnější přístup. Další informace najdete v tématu Zabezpečení osvědčených postupů > zabezpečení připojení.

  1. V souboru Azure_config_settings.txt nebo ve výstupu get-content příkazu v PowerShellu vyhledejte dvojici connectionString klíč/hodnota klíče a zkopírujte hodnotu. Měl by vypadat nějak takto:

    HostName=myprojHubxxxxxxxxxx.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”
    
  2. V řešení sady Visual Studio DeviceSimulator otevřete soubor AzureIoTHub.cs v editoru a vložte hodnotu connectionString zkopírovanou v předchozím kroku do proměnné řetězce iotHubConnectionString.

    Snímek obrazovky s řešením Simulátor zařízení s otevřeným souborem cs služby Azure IoT Hub a přidanou hodnotou připojovací řetězec služby IoT Hub

Konfigurace simulátoru zařízení s ověřovacími klíči

Nakonfigurujte DeviceSimulator pomocí ověřovacích klíčů, které vytvořila šablona ARM.

  1. Otevřete AppCredentials.txt textový soubor, který jste vytvořili v předchozím cvičení.

  2. V řešení Visual Studio DeviceSimulator otevřete soubor PropUpdater.cs v editoru. Zkopírujte a vložte globálně jedinečné identifikátory (GUID) z textového souboru do .cs souboru. Použijte následující mapování z .cs proměnných na výstup dat JSON v textovém souboru:

    AppCredentials.txt PropUpdater.cs
    appId clientId
    Heslo clientSecret
    klient tenantId

    Snímek obrazovky s řešením Simulátor zařízení s přidanými hodnotami ID klienta a PropUpdater.cs souborem, otevřeným a tajným kódem klienta

  3. Pokud chcete uložit práci v sadě Visual Studio, vyberte Uložit>vše.

Připojte předfab služby Azure Digital Twins v Unity k digitálním dvojčatům, abyste mohli přijímat simulovaná telemetrická data z DeviceSimulatorwebu .

Přidání předběžného ověření připojení Azure Digital Twins

Přidejte předfabový prostředek připojení Azure Digital Twins do scény Unity a nakonfigurujte ho.

  1. Vraťte se do projektu Unity.

  2. ADTConnection Vyberte herní objekt v hierarchii. Pokud v hierarchii chybí, přetáhněte předfab assety>AdTPrefabs>ADTConnection do hierarchie scény.

    Snímek obrazovky hierarchie Unity se zvýrazněnou hlavní scénou

  3. V textovém editoru otevřete textový soubor, který jste vytvořili v posledním cvičení Azure_config_settings.txt. Soubor obsahuje klíčové konfigurační parametry služby Azure Digital Twins. Pokud relace PowerShellu zůstane aktivní, vyhledejte get-content výstup z příkazu.

  4. V souboru Azure_config_settings.txt nebo ve výstupu get-content příkazu v PowerShellu vyhledejte dvojici signalRNegotiatePath klíč/hodnota klíče a zkopírujte hodnotu. Měl by vypadat nějak takto:

    https://myprojfuncappxxxxxxxxxx.azurewebsites.net/api/negotiate
    
  5. Tuto hodnotu přidejte do parametru Url v části Obslužná rutina dat ADT (Script) s adresou URL funkce získanou v kroku 1. Zahrňte vše do adresy URL až do a včetně …/api. Nezahrnujte poslední zpětné lomítko ani slovo negotiate.

    Snímek obrazovky editoru Unity s vybraným předfabem připojení Azure Digital Twins a přidaným skriptem obslužné rutiny dat ADT

  6. Uložte scénu.

Teď, když jsou služby Azure nastavené a příslušné ukazatele jsou ve scéně Unity, můžete vytvořit uživatelské rozhraní pro vizualizaci dat operací.