Zarządzanie urządzeniami i kontrola
W tym omówieniu przedstawiono kluczowe pojęcia dotyczące zarządzania urządzeniami i kontrolowania ich w typowym rozwiązaniu usługi Azure IoT. Każda sekcja zawiera linki do zawartości, która zawiera szczegółowe informacje i wskazówki.
Aplikacje usługi IoT Central używają usług IoT Hub i Device Provisioning Service (DPS) wewnętrznie. W związku z tym koncepcje zawarte w tym artykule dotyczą korzystania z usługi IoT Central do eksplorowania scenariusza IoT lub tworzenia rozwiązania przy użyciu usługi IoT Hub i usługi DPS.
Na poniższym diagramie przedstawiono ogólny widok składników w typowym rozwiązaniu IoT. Ten artykuł koncentruje się na składnikach zarządzania urządzeniami i kontroli rozwiązania IoT.
W usłudze Azure IoT zarządzanie urządzeniami odnosi się do procesów, takich jak aprowizowanie i aktualizowanie urządzeń. Zarządzanie urządzeniami obejmuje następujące zadania:
- Rejestracja urządzenia
- Aprowizowanie urządzeń
- Wdrażanie urządzeń
- Aktualizacje urządzenia
- Zarządzanie kluczami urządzenia i rotacja
- Monitorowanie urządzeń
- Włączanie i wyłączanie urządzeń
W usłudze Azure IoT kontrolka i polecenia odnoszą się do procesów, które umożliwiają wysyłanie poleceń do urządzeń i odbieranie od nich odpowiedzi. Możesz na przykład wysłać polecenie do urządzenia:
- Ustaw temperaturę docelową.
- Żądaj wartości maksymalnej i minimalnej temperatury w ciągu ostatnich dwóch godzin.
- Ustaw interwał telemetrii na 10 sekund.
Typy pierwotne
Rozwiązania Usługi Azure IoT mogą używać następujących elementów pierwotnych zarówno do zarządzania urządzeniami, jak i poleceń i kontroli:
- Bliźniacze reprezentacje urządzeń do udostępniania i synchronizowania danych stanu z chmurą. Na przykład urządzenie może użyć bliźniaczej reprezentacji urządzenia, aby zgłosić bieżący stan zaworu, który kontroluje w chmurze, i odbierać żądaną temperaturę docelową z chmury.
- Cyfrowe reprezentacje bliźniacze reprezentujące urządzenie w świecie cyfrowym. Na przykład cyfrowa reprezentacja bliźniaca może reprezentować fizyczną lokalizację urządzenia, jego możliwości i relacje z innymi urządzeniami. Aby dowiedzieć się więcej na temat różnic między bliźniaczymi reprezentacjami urządzeń a reprezentacjami bliźniaczymi, zobacz Omówienie cyfrowych reprezentacji bliźniaczych IoT Plug and Play.
- Metody bezpośrednie do odbierania poleceń z chmury. Metoda bezpośrednia może mieć parametry i zwrócić odpowiedź. Na przykład chmura może wywołać metodę bezpośrednią, aby zażądać ponownego uruchomienia urządzenia w ciągu 30 sekund.
- Komunikaty z chmury do urządzenia w celu odbierania jednokierunkowych powiadomień z chmury. Na przykład powiadomienie, że aktualizacja jest gotowa do pobrania.
Aby dowiedzieć się więcej, zobacz Wskazówki dotyczące komunikacji chmura-urządzenie.
Rejestracja urządzenia
Aby urządzenie mogło nawiązać połączenie z centrum IoT Hub, musi zostać zarejestrowane. Rejestracja urządzenia to proces tworzenia tożsamości urządzenia w chmurze. Każde centrum IoT ma własny rejestr urządzeń wewnętrznych. Tożsamość urządzenia jest używana do uwierzytelniania urządzenia podczas nawiązywania połączenia z usługą Azure IoT. Wpis rejestracji urządzenia zawiera następujące właściwości:
- Unikatowy identyfikator urządzenia.
- Informacje o uwierzytelnianiu, takie jak klucze symetryczne lub certyfikaty X.509.
- Typ urządzenia. Czy jest to urządzenie usługi IoT Edge, czy nie?
Jeśli uważasz, że urządzenie zostało naruszone lub nie działa prawidłowo, możesz wyłączyć je w rejestrze urządzeń, aby zapobiec nawiązywaniu połączenia z chmurą. Aby umożliwić urządzeniu połączenie z chmurą po rozwiązaniu problemu, możesz ponownie włączyć je w rejestrze urządzeń. Możesz również trwale usunąć urządzenie z rejestru urządzeń, aby całkowicie uniemożliwić nawiązanie połączenia z chmurą.
Aby dowiedzieć się więcej, zobacz Omówienie rejestru tożsamości w centrum IoT.
Usługa IoT Central udostępnia interfejs użytkownika do zarządzania rejestrem urządzeń w bazowym centrum IoT. Aby dowiedzieć się więcej, zobacz Dodawanie urządzenia (IoT Central).
Aprowizowanie urządzeń
Każde urządzenie w rozwiązaniu należy skonfigurować przy użyciu szczegółów centrum IoT Hub, z którym powinien się połączyć. Można ręcznie skonfigurować każde urządzenie w rozwiązaniu, ale takie podejście może nie być praktyczne w przypadku dużej liczby urządzeń. Aby obejść ten problem, możesz użyć usługi Device Provisioning Service (DPS), aby automatycznie zarejestrować każde urządzenie w centrum IoT, a następnie aprowizować każde urządzenie przy użyciu wymaganych informacji o połączeniu. Jeśli rozwiązanie IoT używa wielu centrów IoT, możesz użyć usługi DPS do aprowizacji urządzeń w centrum na podstawie kryteriów, takich jak najbliższe centrum urządzenia. Usługę DPS można skonfigurować przy użyciu reguł rejestrowania i aprowizacji urządzeń przed fizycznym wdrożeniem urządzenia w terenie.
Jeśli rozwiązanie IoT używa usługi IoT Hub, użycie usługi DPS jest opcjonalne. Jeśli używasz usługi IoT Central, rozwiązanie automatycznie używa wystąpienia usługi DPS zarządzanego przez usługę IoT Central.
Aby dowiedzieć się więcej, zobacz Omówienie usługi Device provisioning.
Wdrażanie urządzeń
W usłudze Azure IoT wdrażanie urządzeń zwykle odnosi się do procesu instalowania oprogramowania na urządzeniu usługi IoT Edge. Gdy urządzenie usługi IoT Edge łączy się z centrum IoT Hub, otrzymuje manifest wdrożenia zawierający szczegóły modułów do uruchomienia na urządzeniu. Manifest wdrożenia zawiera również informacje o konfiguracji modułów. Istnieje wiele standardowych modułów dostępnych dla urządzeń usługi IoT Edge. Możesz również utworzyć własne moduły niestandardowe.
Aby dowiedzieć się więcej, zobacz Co to jest usługa Azure IoT Edge?
Jeśli używasz usługi IoT Central, możesz zarządzać manifestami wdrażania przy użyciu interfejsu użytkownika usługi IoT Central.
Aktualizacje urządzenia
Zazwyczaj rozwiązanie IoT musi zawierać sposób aktualizowania oprogramowania urządzenia. W przypadku urządzenia usługi IoT Edge można zaktualizować moduły uruchamiane na urządzeniu, aktualizując manifest wdrożenia.
W przypadku urządzenia spoza usługi IoT Edge należy zaktualizować oprogramowanie układowe urządzenia. Ten proces aktualizacji może użyć komunikatu chmura-urządzenie, aby powiadomić urządzenie o dostępności aktualizacji oprogramowania układowego. Następnie urządzenie uruchamia kod niestandardowy, aby pobrać i zainstalować aktualizację.
Usługa Device Update for IoT Hub udostępnia rozwiązanie zarządzane do aktualizowania urządzeń. Umożliwia przekazywanie aktualizacji oprogramowania układowego do chmury, a następnie rozpowszechnianie ich na urządzeniach. Umożliwia również monitorowanie procesu aktualizacji i wycofywanie do poprzedniej wersji, jeśli aktualizacja zakończy się niepowodzeniem.
Zarządzanie kluczami urządzenia i rotacja
W trakcie cyklu życia rozwiązania IoT może być konieczne przerzucanie kluczy używanych do uwierzytelniania urządzeń. Na przykład może być konieczne przerzucanie kluczy, jeśli podejrzewasz, że klucz został naruszony lub jeśli certyfikat wygaśnie:
- Przerzucanie kluczy używanych do uwierzytelniania urządzeń w usłudze IoT Hub i usłudze DPS
- Przerzucanie kluczy używanych do uwierzytelniania urządzeń w usłudze IoT Central
Monitorowanie urządzeń
W ramach ogólnego monitorowania rozwiązań warto monitorować kondycję urządzeń. Możesz na przykład monitorować kondycję urządzeń lub wykrywać, kiedy urządzenie nie jest już połączone z chmurą. Opcje monitorowania urządzeń obejmują:
- Urządzenia używają bliźniaczej reprezentacji urządzenia do raportowania bieżącego stanu do chmury. Na przykład urządzenie może zgłosić bieżącą temperaturę wewnętrzną lub bieżący poziom baterii.
- Urządzenia mogą zgłaszać alerty, wysyłając komunikaty telemetryczne do chmury.
- Usługa IoT Hub może zgłaszać zdarzenia , gdy urządzenia nawiązują połączenie z chmurą lub rozłączą się z nią.
- Usługa IoT Central może używać reguł do uruchamiania akcji po spełnieniu określonych kryteriów.
- Użyj narzędzi uczenia maszynowego, aby analizować strumienie telemetrii urządzenia w celu identyfikowania anomalii wskazujących problem z urządzeniem.
Aby dowiedzieć się więcej, zobacz Monitorowanie stanu połączenia urządzenia (IoT Hub).
Migracja urządzenia
Jeśli musisz przeprowadzić migrację urządzenia z usługi IoT Central do usługi IoT Hub, możesz użyć narzędzia do migracji urządzeń. Aby dowiedzieć się więcej, zobacz Migrowanie urządzeń z usługi IoT Central do usługi IoT Hub.
Sterowanie i kontrola
Aby wysyłać polecenia do urządzeń w celu kontrolowania ich zachowania, użyj:
Bezpośrednie metody komunikacji, które wymagają natychmiastowego potwierdzenia wyniku. Metody bezpośrednie są często używane do interaktywnej kontroli urządzeń, takich jak włączanie wentylatora.
Żądane właściwości bliźniaczej reprezentacji urządzenia dla długotrwałych poleceń mających na celu umieszczenie urządzenia w określonym żądanym stanie. Na przykład ustaw interwał wysyłania danych telemetrycznych na 30 minut.
Komunikaty z chmury do urządzenia dla jednokierunkowych powiadomień do urządzenia.
Aby dowiedzieć się więcej, zobacz Wskazówki dotyczące komunikacji chmura-urządzenie.
W niektórych scenariuszach możesz zautomatyzować kontrolę urządzenia na podstawie pętli opinii. Jeśli na przykład temperatura urządzenia jest zbyt wysoka, logika uruchomiona w chmurze może wysłać polecenie, aby włączyć wentylator. Proces chmury może następnie wysłać polecenie, aby wyłączyć wentylator, gdy temperatura powróci do normy.
Istnieje również możliwość uruchamiania tego rodzaju automatyzacji lokalnie. Jeśli na przykład używasz usługi IoT Edge do implementowania urządzenia bramy, możesz uruchomić logikę, która kontroluje urządzenie w module usługi IoT Edge. Uruchomienie tej logiki na brzegu sieci może zmniejszyć opóźnienie i zapewnić odporność, jeśli wystąpi awaria sieci.
Stanowiska
Do wysyłania poleceń do poszczególnych urządzeń można użyć metod bezpośrednich, żądanych właściwości i komunikatów z chmury do urządzenia. Jeśli musisz wysyłać polecenia do wielu urządzeń, możesz użyć zadań. Zadania umożliwiają zaplanowanie i wysłanie poleceń oraz aktualizacji żądanych właściwości do wielu urządzeń w tym samym czasie. Możesz również użyć zadań do monitorowania postępu poleceń i wycofania do poprzedniego stanu, jeśli polecenia kończą się niepowodzeniem.
Aby dowiedzieć się więcej, zobacz:
- Planowanie zadań na wielu urządzeniach (IoT Hub)
- Zbiorcze zarządzanie urządzeniami w aplikacji usługi Azure IoT Central
Następne kroki
Po wyświetleniu przeglądu zarządzania urządzeniami i kontroli w rozwiązaniach usługi Azure IoT niektóre sugerowane następne kroki obejmują: