Udostępnij za pośrednictwem


Metadane informacji o urządzeniu w wstępnie skonfigurowanym rozwiązaniu do monitorowania zdalnego

Wstępnie skonfigurowane rozwiązanie do monitorowania zdalnego pakietu Azure IoT Suite przedstawia podejście do zarządzania metadanymi urządzenia. W tym artykule opisano podejście, które wymaga tego rozwiązania, aby umożliwić zrozumienie następujących kwestii:

  • Jakie metadane urządzenia są przechowywane w rozwiązaniu.
  • Jak rozwiązanie zarządza metadanymi urządzenia.

Kontekst

Wstępnie skonfigurowane rozwiązanie do monitorowania zdalnego używa Azure IoT Hub, aby umożliwić urządzeniom wysyłanie danych do chmury. Rozwiązanie przechowuje informacje o urządzeniach w trzech różnych lokalizacjach:

Lokalizacja Przechowywane informacje Implementacja
Rejestr tożsamości Identyfikator urządzenia, klucze uwierzytelniania, stan włączony Wbudowane w IoT Hub
Bliźniacze reprezentacje urządzeń Metadane: zgłaszane właściwości, żądane właściwości, tagi Wbudowane w IoT Hub
Cosmos DB Historia poleceń i metod Niestandardowy dla rozwiązania

IoT Hub zawiera rejestr tożsamości urządzeń do zarządzania dostępem do centrum IoT i używa bliźniaczych reprezentacji urządzeń do zarządzania metadanymi urządzenia. Istnieje również rejestr urządzeń specyficznych dla rozwiązania do monitorowania zdalnego, który przechowuje historię poleceń i metod. Rozwiązanie do monitorowania zdalnego używa bazy danych Cosmos DB do implementowania magazynu niestandardowego na potrzeby historii poleceń i metod.

Uwaga

Wstępnie skonfigurowane rozwiązanie do monitorowania zdalnego przechowuje rejestr tożsamości urządzeń w synchronizacji z informacjami w bazie danych usługi Cosmos DB. Oba używają tego samego identyfikatora urządzenia, aby jednoznacznie zidentyfikować każde urządzenie podłączone do centrum IoT.

Metadane urządzenia

IoT Hub utrzymuje bliźniacze reprezentację urządzenia dla każdego symulowanego i fizycznego urządzenia podłączonego do rozwiązania do monitorowania zdalnego. Rozwiązanie używa bliźniaczych reprezentacji urządzeń do zarządzania metadanymi skojarzonymi z urządzeniami. Bliźniacza reprezentacja urządzenia to dokument JSON obsługiwany przez IoT Hub, a rozwiązanie używa interfejsu API IoT Hub do interakcji z bliźniaczymi reprezentacjami urządzeń.

Bliźniacze reprezentacje urządzenia przechowują trzy typy metadanych:

  • Zgłoszone właściwości są wysyłane do centrum IoT hub przez urządzenie. W rozwiązaniu do monitorowania zdalnego symulowane urządzenia wysyłają zgłaszane właściwości podczas uruchamiania i w odpowiedzi na polecenia i metody zmiany stanu urządzenia . Zgłoszone właściwości można wyświetlić na liście Urządzenia i szczegóły urządzenia w portalu rozwiązania. Zgłoszone właściwości są tylko do odczytu.
  • Żądane właściwości są pobierane z centrum IoT hub przez urządzenia. Jest to odpowiedzialność za wprowadzenie wszelkich niezbędnych zmian konfiguracji na urządzeniu. Jest to również odpowiedzialność urządzenia za zgłaszanie zmiany z powrotem do centrum jako zgłaszanej właściwości. Żądaną wartość właściwości można ustawić za pośrednictwem portalu rozwiązania.
  • Tagi istnieją tylko w bliźniaczej reprezentacji urządzenia i nigdy nie są synchronizowane z urządzeniem. Wartości tagów można ustawić w portalu rozwiązania i używać ich podczas filtrowania listy urządzeń. Rozwiązanie używa również tagu do identyfikowania ikony do wyświetlania urządzenia w portalu rozwiązania.

Przykładowe zgłaszane właściwości z symulowanych urządzeń obejmują producenta, numer modelu, szerokość geograficzną i długość geograficzną. Symulowane urządzenia zwracają również listę obsługiwanych metod jako zgłoszoną właściwość.

Uwaga

W kodzie na symulowanym urządzeniu są używane wyłącznie żądane właściwości Desired.Config.TemperatureMeanValue i Desired.Config.TelemetryInterval do aktualizowania zgłaszanych właściwości wysyłanych z powrotem do usługi IoT Hub. Wszystkie inne żądania zmiany żądanej właściwości są ignorowane.

Dokument JSON metadanych informacji o urządzeniu przechowywany w bazie danych usługi Cosmos DB rejestru urządzeń ma następującą strukturę:

{
  "DeviceProperties": {
    "DeviceID": "deviceid1",
    "HubEnabledState": null,
    "CreatedTime": "2016-04-25T23:54:01.313802Z",
    "DeviceState": "normal",
    "UpdatedTime": null
    },
  "SystemProperties": {
    "ICCID": null
  },
  "Commands": [],
  "CommandHistory": [],
  "IsSimulatedDevice": false,
  "id": "fe81a81c-bcbc-4970-81f4-7f12f2d8bda8"
}

Uwaga

Informacje o urządzeniu mogą również zawierać metadane opisujące dane telemetryczne wysyłane przez urządzenie do IoT Hub. Rozwiązanie do monitorowania zdalnego używa tych metadanych telemetrii w celu dostosowania sposobu wyświetlania dynamicznej telemetrii na pulpicie nawigacyjnym.

Cykl życia

Po pierwszym utworzeniu urządzenia w portalu rozwiązania rozwiązanie tworzy wpis w bazie danych usługi Cosmos DB do przechowywania historii poleceń i metod. W tym momencie rozwiązanie tworzy również wpis dla urządzenia w rejestrze tożsamości urządzeń, który generuje klucze używane przez urządzenie do uwierzytelniania za pomocą IoT Hub. Tworzy również bliźniaką reprezentację urządzenia.

Gdy urządzenie po raz pierwszy łączy się z rozwiązaniem, wysyła zgłaszane właściwości i komunikat o informacjach o urządzeniu. Zgłoszone wartości właściwości są automatycznie zapisywane w bliźniaczej reprezentacji urządzenia. Zgłoszone właściwości obejmują producenta urządzenia, numer modelu, numer seryjny i listę obsługiwanych metod. Komunikat o informacjach o urządzeniu zawiera listę poleceń obsługiwanych przez urządzenie, w tym informacje o dowolnych parametrach polecenia. Po odebraniu tego komunikatu rozwiązanie aktualizuje informacje o urządzeniu w bazie danych usługi Cosmos DB.

Wyświetlanie i edytowanie informacji o urządzeniu w portalu rozwiązania

Lista urządzeń w portalu rozwiązania wyświetla następujące właściwości urządzenia jako kolumny domyślnie: Status, DeviceId, Manufacturer, Model Number, Serial Number, Firmware, Platform, Processor i Installed RAM. Możesz dostosować kolumny, klikając pozycję Edytor kolumn. Właściwości urządzenia Szerokość geograficzna i Długość geograficzna są napędzane lokalizacją na mapie Bing na pulpicie nawigacyjnym.

Edytor kolumn na liście urządzeń

W okienku Szczegóły urządzenia w portalu rozwiązania można edytować żądane właściwości i tagi (zgłaszane właściwości są tylko do odczytu).

Okienko Szczegóły urządzenia

Za pomocą portalu rozwiązania możesz usunąć urządzenie z rozwiązania. Po usunięciu urządzenia rozwiązanie usunie wpis urządzenia z rejestru tożsamości, a następnie usunie bliźniacze reprezentację urządzenia. Rozwiązanie usuwa również informacje związane z urządzeniem z bazy danych usługi Cosmos DB. Aby można było usunąć urządzenie, należy go wyłączyć.

Usuń urządzenie

Przetwarzanie komunikatów o informacjach o urządzeniu

Komunikaty o informacjach o urządzeniu są różne od komunikatów telemetrycznych. Komunikaty o informacjach o urządzeniu obejmują polecenia, na które urządzenie może reagować, oraz dowolną historię poleceń. IoT Hub sama nie ma wiedzy na temat metadanych zawartych w komunikacie o informacjach o urządzeniu i przetwarza komunikat w taki sam sposób, jak przetwarza wszelkie komunikaty z urządzenia do chmury. W rozwiązaniu do monitorowania zdalnego zadanie usługi Azure Stream Analytics (ASA) odczytuje komunikaty z IoT Hub. Zadanie analizy strumienia DeviceInfo filtruje komunikaty zawierające ciąg "ObjectType": "DeviceInfo" i przekazuje je do wystąpienia hosta EventProcessorHost uruchomionego w zadaniu internetowym. Logika w wystąpieniu EventProcessorHost używa identyfikatora urządzenia do znajdowania rekordu usługi Cosmos DB dla określonego urządzenia i aktualizowania rekordu.

Uwaga

Komunikat o informacjach o urządzeniu jest standardowym komunikatem z urządzenia do chmury. Rozwiązanie rozróżnia komunikaty o informacjach o urządzeniu i komunikaty telemetryczne przy użyciu zapytań ASA.

Następne kroki

Teraz dowiesz się, jak dostosować wstępnie skonfigurowane rozwiązania, możesz zapoznać się z innymi funkcjami i możliwościami wstępnie skonfigurowanych rozwiązań pakietu IoT Suite: