Arkitektur för IoT Plug and Play
Med IoT Plug and Play kan lösningsbyggare integrera IoT-enheter med sina lösningar utan någon manuell konfiguration. Kärnan i IoT Plug and Play är en enhetsmodell som beskriver en enhets funktioner för ett IoT Plug and Play-aktiverat program. Den här modellen är strukturerad som en uppsättning gränssnitt som definierar:
- Egenskaper som representerar skrivskyddat eller skrivbart tillstånd för en enhet eller annan entitet. Ett enhetsserienummer kan till exempel vara en skrivskyddad egenskap och en måltemperatur på en termostat kan vara en skrivbar egenskap.
- Telemetri som är de data som genereras av en enhet, oavsett om data är en vanlig ström av sensoravläsningar, ett tillfälligt fel eller ett informationsmeddelande.
- Kommandon som beskriver en funktion eller åtgärd som kan utföras på en enhet. Ett kommando kan till exempel starta om en gateway eller ta en bild med hjälp av en fjärrkamera.
Varje modell och gränssnitt har ett unikt ID.
Följande diagram visar nyckelelementen i en IoT Plug and Play-lösning:
Modelldatabas
Modelllagringsplatsen är ett arkiv för utvalda modell- och gränssnittsdefinitioner. Modeller och gränssnitt definieras med DTDL (Digital Twins Definition Language).
Med webbgränssnittet kan du söka efter och hämta modeller och gränssnitt.
Enheter
En enhetsbyggare implementerar koden som ska köras på en IoT-enhet med någon av Azure IoT-enhets-SDK:erna. Enhets-SDK:erna hjälper enhetsbyggaren att:
- Anslut säkert till en IoT-hubb.
- Registrera enheten med din IoT-hubb och meddela modell-ID:t som identifierar samlingen av DTDL-gränssnitt som enheten implementerar.
- Synkronisera egenskaperna som definierats i DTDL-gränssnitten mellan enheten och din IoT-hubb.
- Lägg till kommandohanterare för de kommandon som definierats i DTDL-gränssnitten.
- Skicka telemetri till IoT-hubben.
IoT Edge-gateway
En IoT Edge-gateway fungerar som mellanhand för att ansluta IoT Plug and Play-enheter som inte kan ansluta direkt till en IoT-hubb. Mer information finns i Hur en IoT Edge-enhet kan användas som en gateway.
IoT Edge-moduler
Med en IoT Edge-modul kan du distribuera och hantera affärslogik på gränsen. Azure IoT Edge-moduler är den minsta beräkningsenheten som hanteras av IoT Edge och kan innehålla Azure-tjänster (till exempel Azure Stream Analytics) eller din egen lösningsspecifika kod.
IoT Edge-hubben är en av de moduler som utgör Azure IoT Edge-körningen. Den fungerar som en lokal proxy för IoT Hub genom att exponera samma protokollslutpunkter som IoT Hub. Den här konsekvensen innebär att klienter (oavsett om de är enheter eller moduler) kan ansluta till IoT Edge-körningen precis som de skulle göra med IoT Hub.
Enhets-SDK:erna hjälper en modulbyggare att:
- Använd IoT Edge-hubben för att ansluta säkert till din IoT-hubb.
- Registrera modulen med din IoT-hubb och meddela modell-ID:t som identifierar samlingen av DTDL-gränssnitt som enheten implementerar.
- Synkronisera egenskaperna som definierats i DTDL-gränssnitten mellan enheten och din IoT-hubb.
- Lägg till kommandohanterare för de kommandon som definierats i DTDL-gränssnitten.
- Skicka telemetri till IoT-hubben.
IoT-hubb
IoT Hub är en molnbaserad tjänst som fungerar som en central meddelandehubb för dubbelriktad kommunikation mellan din IoT-lösning och de enheter som den hanterar.
En IoT-hubb:
- Gör modell-ID:t implementerat av en enhet tillgängligt för en serverdelslösning.
- Underhåller den digitala tvilling som är associerad med varje IoT Plug and Play-enhet som är ansluten till hubben.
- Vidarebefordrar telemetriströmmar till andra tjänster för bearbetning eller lagring.
- Dirigerar ändringshändelser för digitala tvillingar till andra tjänster för att aktivera enhetsövervakning.
Serverdelslösning
En serverdelslösning övervakar och styr anslutna enheter genom att interagera med digitala tvillingar i IoT-hubben. Använd en av Azure IoT-tjänst-SDK:erna för att implementera din serverdelslösning. För att förstå funktionerna i en ansluten enhet, lösningens serverdel:
- Hämtar modell-ID:t som enheten registrerade med IoT-hubben.
- Använder modell-ID:t för att hämta gränssnittsdefinitionerna från valfri modelllagringsplats.
- Använder modellparsern för att extrahera information från gränssnittsdefinitionerna.
Serverdelslösningen kan använda informationen från gränssnittsdefinitionerna för att:
- Läsa egenskapsvärden som rapporterats av enheter.
- Uppdatera skrivbara egenskaper på en enhet.
- Anropa kommandon som implementeras av en enhet.
- Förstå formatet för telemetri som skickas av en enhet.
Nästa steg
Nu när du har en översikt över arkitekturen för en IoT Plug and Play-lösning är nästa steg att lära dig mer om: