Przewodnik łączności urządzeń usługi IoT Central

Aplikacja usługi IoT Central umożliwia monitorowanie setek tysięcy urządzeń i zarządzanie nimi w całym cyklu życia. Ten przewodnik jest przeznaczony dla deweloperów urządzeń, którzy implementują kod do uruchamiania na urządzeniach łączących się z usługą IoT Central.

Urządzenia wchodzą w interakcje z aplikacją usługi IoT Central przy użyciu następujących elementów pierwotnych:

  • Dane telemetryczne to dane wysyłane przez urządzenie do usługi IoT Central. Na przykład strumień wartości temperatury z czujnika dołączania.
  • Właściwości to wartości stanu raportowane przez urządzenie do usługi IoT Central. Na przykład bieżąca wersja oprogramowania układowego urządzenia. Można również mieć właściwości zapisywalne, które usługa IoT Central może aktualizować na urządzeniu, takie jak temperatura docelowa.
  • Polecenia są wywoływane z usługi IoT Central w celu kontrolowania zachowania urządzenia. Na przykład aplikacja usługi IoT Central może wywołać polecenie w celu ponownego uruchomienia urządzenia.

Typy urządzeń

W poniższych sekcjach opisano główne typy urządzeń, które można połączyć z aplikacją usługi IoT Central:

Urządzenie IoT

Urządzenie IoT to autonomiczne urządzenie, które łączy się bezpośrednio z usługą IoT Central. Urządzenie IoT zwykle wysyła dane telemetryczne z dołączonych lub połączonych czujników do aplikacji usługi IoT Central. Urządzenia autonomiczne mogą również zgłaszać wartości właściwości, odbierać wartości właściwości zapisywalnych i odpowiadać na polecenia.

Urządzenie usługi IoT Edge

Urządzenie usługi IoT Edge łączy się bezpośrednio z usługą IoT Central. Urządzenie usługi IoT Edge może wysyłać własne dane telemetryczne, zgłaszać jego właściwości i reagować na zapisywalne aktualizacje właściwości i polecenia. Moduły usługi IoT Edge przetwarzają dane lokalnie na urządzeniu usługi IoT Edge. Urządzenie usługi IoT Edge może również działać jako pośrednik dla innych urządzeń nazywanych urządzeniami podrzędnymi. Scenariusze korzystające z urządzeń usługi IoT Edge obejmują:

  • Agregowanie lub filtrowanie danych telemetrycznych przed wysłaniem ich do usługi IoT Central. Takie podejście może pomóc zmniejszyć koszty wysyłania danych do usługi IoT Central.
  • Włącz urządzenia, które nie mogą łączyć się bezpośrednio z usługą IoT Central, aby nawiązać połączenie za pośrednictwem urządzenia usługi IoT Edge. Na przykład urządzenie podrzędne może używać połączenia Bluetooth do łączenia się z urządzeniem usługi IoT Edge, które następnie łączy się za pośrednictwem Internetu z usługą IoT Central.
  • Kontroluj urządzenia podrzędne lokalnie, aby uniknąć opóźnień związanych z nawiązywaniem połączenia z usługą IoT Central przez Internet.

Usługa IoT Central widzi tylko urządzenie usługi IoT Edge, a nie urządzenia podrzędne podłączone do urządzenia usługi IoT Edge.

Aby dowiedzieć się więcej, zobacz Dodawanie urządzenia usługi Azure IoT Edge do aplikacji usługi Azure IoT Central.

Bramy

Urządzenie bramy zarządza co najmniej jednym urządzeniem podrzędnym, które łączy się z aplikacją usługi IoT Central. Urządzenie bramy może przetwarzać dane telemetryczne z urządzeń podrzędnych przed przekazaniem ich do aplikacji usługi IoT Central. Zarówno urządzenia IoT, jak i urządzenia usługi IoT Edge mogą działać jako bramy. Aby dowiedzieć się więcej, zobacz Definiowanie nowego typu urządzenia bramy IoT w aplikacji usługi Azure IoT Central i Jak połączyć urządzenia za pośrednictwem przezroczystej bramy usługi IoT Edge.

Jak urządzenia łączą się

Podczas łączenia urządzenia z usługą IoT Central przechodzi on przez następujące etapy: zarejestrowane, aprowidowane i połączone.

Rejestrowanie urządzenia

Podczas rejestrowania urządzenia w usłudze IoT Central należy poinformować usługę IoT Central o identyfikatorze urządzenia, które chcesz połączyć z aplikacją. Opcjonalnie na tym etapie możesz przypisać urządzenie do szablonu urządzenia, który deklaruje możliwości urządzenia do aplikacji.

Napiwek

Identyfikator urządzenia może zawierać litery, cyfry i - znak.

Istnieją trzy sposoby rejestrowania urządzenia w aplikacji usługi IoT Central:

  • Automatyczne rejestrowanie urządzeń podczas pierwszej próby nawiązania połączenia. Ten scenariusz umożliwia producentom OEM masową produkcję urządzeń, które mogą łączyć się bez wcześniejszego zarejestrowania. Aby dowiedzieć się więcej, zobacz Automatyczne rejestrowanie urządzeń.

  • Zbiorcze dodawanie urządzeń z pliku CSV. Aby dowiedzieć się więcej, zobacz Importowanie urządzeń.

  • Użyj strony Urządzenia w aplikacji usługi IoT Central, aby zarejestrować urządzenia indywidualnie. Aby dowiedzieć się więcej, zobacz Dodawanie urządzenia.

    Opcjonalnie możesz wymagać od operatora zatwierdzenia urządzenia przed rozpoczęciem wysyłania danych.

    Napiwek

    Na stronie Uprawnienia > Grupy połączeń urządzeń opcja Automatycznie zatwierdzanie określa, czy operator musi ręcznie zatwierdzić urządzenie, zanim będzie mógł rozpocząć wysyłanie danych.

Wystarczy zarejestrować urządzenie tylko raz w aplikacji usługi IoT Central.

Aprowizuj urządzenie

Gdy urządzenie najpierw próbuje nawiązać połączenie z aplikacją usługi IoT Central, uruchamia proces, łącząc się z usługą Device Provisioning Service (DPS). Usługa DPS sprawdza poświadczenia urządzenia, a jeśli są prawidłowe, aprowizuje urządzenie przy użyciu parametry połączenia dla jednego z wewnętrznych centrów IoT Central. Usługa DPS używa konfiguracji rejestracji grup w aplikacji usługi IoT Central do zarządzania tym procesem aprowizacji.

Napiwek

Urządzenie wysyła również wartość zakresu identyfikatora, która informuje usługę DPS o tym, z którą aplikacją usługi IoT Central nawiązuje połączenie. Zakres identyfikatorów można wyszukać w aplikacji usługi IoT Central na stronie Uprawnienia > Grupy połączeń urządzeń.

Zazwyczaj urządzenie powinno buforować parametry połączenia odbierane z usługi DPS, ale powinno być przygotowane do pobrania nowych szczegółów połączenia, jeśli bieżące połączenie nie powiedzie się. Aby dowiedzieć się więcej, zobacz Handle connect failures (Obsługa niepowodzeń połączenia).

Korzystanie z usługi DPS umożliwia:

  • Usługa IoT Central umożliwia dołączanie i łączenie urządzeń na dużą skalę.
  • Możesz wygenerować poświadczenia urządzenia i skonfigurować je w trybie offline bez rejestrowania urządzeń za pośrednictwem interfejsu użytkownika usługi IoT Central.
  • Do rejestrowania urządzeń w usłudze IoT Central służy własne identyfikatory urządzeń. Korzystanie z własnych identyfikatorów urządzeń upraszcza integrację z istniejącymi systemami zaplecza.
  • Jeden spójny sposób łączenia urządzeń z usługą IoT Central.

Uwierzytelnianie i łączenie urządzenia

Urządzenie używa swoich poświadczeń i parametry połączenia odebranych z usługi DPS w celu nawiązania połączenia z aplikacją usługi IoT Central i uwierzytelnienia go. Urządzenie powinno również wysłać identyfikator modelu identyfikujący szablon urządzenia, do którego został przypisany.

Usługa IoT Central obsługuje dwa typy poświadczeń urządzenia:

  • Sygnatury dostępu współdzielonego
  • Certyfikaty X.509

Aby dowiedzieć się więcej, zobacz Pojęcia dotyczące uwierzytelniania urządzeń.

Wszystkie dane wymieniane między urządzeniami a usługą Azure IoT Central są szyfrowane. Usługa IoT Hub uwierzytelnia każde żądanie z urządzenia, które łączy się z dowolnymi punktami końcowymi usługi IoT Hub dostępnymi dla urządzeń. Aby uniknąć wymiany poświadczeń za pośrednictwem przewodu, urządzenie używa podpisanych tokenów do uwierzytelniania. Aby uzyskać więcej informacji, zobacz Kontrola dostępu do usługi IoT Hub.

wzorce Połączenie ivity

Deweloperzy urządzeń zazwyczaj używają jednego z zestawów SDK urządzeń do implementowania urządzeń łączących się z aplikacją usługi IoT Central. Niektóre scenariusze, takie jak urządzenia, które nie mogą łączyć się z Internetem, również wymagają bramy.

Projekt rozwiązania musi uwzględniać wymagany wzorzec łączności urządzenia. Te wzorce dzielą się na dwie szerokie kategorie. Obie kategorie obejmują urządzenia wysyłające dane telemetryczne do aplikacji usługi IoT Central:

Połączenia trwałe

Połączenia trwałe są wymagane, aby rozwiązanie wymagało możliwości poleceń i kontroli . W scenariuszach poleceń i kontroli aplikacja usługi IoT Central wysyła polecenia do urządzeń w celu kontrolowania ich zachowania niemal w czasie rzeczywistym. Połączenia trwałe utrzymują połączenie sieciowe z chmurą i łączą się ponownie, gdy wystąpią zakłócenia. Użyj protokołu MQTT lub AMQP na potrzeby trwałych połączeń urządzeń z usługą IoT Central.

Następujące opcje obsługują trwałe połączenia urządzeń:

  • Użyj zestawów SDK urządzeń IoT, aby połączyć urządzenia i wysyłać dane telemetryczne:

    Zestawy SDK urządzeń umożliwiają tworzenie trwałych połączeń z usługą IoT Central protokołami MQTT i AMQP.

  • Połączenie urządzenia za pośrednictwem sieci lokalnej do urządzenia usługi IoT Edge, które przekazuje dane telemetryczne do usługi IoT Central:

    Urządzenie usługi IoT Edge może nawiązać trwałe połączenie z usługą IoT Central. W przypadku urządzeń, które nie mogą łączyć się z Internetem lub które wymagają izolacji sieciowej, użyj urządzenia usługi IoT Edge jako bramy lokalnej. Brama przekazuje dane telemetryczne urządzenia do usługi IoT Central. Ta opcja umożliwia sterowanie urządzeniami podrzędnymi połączonymi z urządzeniem usługi IoT Edge i sterowanie nimi.

    Aby dowiedzieć się więcej, zobacz Połączenie urządzenia usługi Azure IoT Edge do aplikacji usługi Azure IoT Central.

  • Użyj mostka urządzeń usługi IoT Central, aby połączyć urządzenia korzystające z niestandardowego protokołu:

    Niektóre urządzenia używają protokołu lub kodowania, takiego jak LWM2M lub COAP, który obecnie nie obsługuje usługi IoT Central. Mostek urządzeń usługi IoT Central działa jako tłumacz, który przekazuje dane telemetryczne do usługi IoT Central.

    Aby dowiedzieć się więcej, zobacz repozytorium GitHub mostka urządzeń usługi Azure IoT Central.

Połączenia efemeryczne

Połączenia efemeryczne to krótkie połączenia dla urządzeń wysyłających dane telemetryczne do aplikacji usługi IoT Central. Gdy urządzenie wyśle dane telemetryczne, spadnie połączenie. Urządzenie ponownie łączy się, gdy ma więcej danych telemetrycznych do wysłania. Połączenia efemeryczne nie są odpowiednie dla scenariuszy poleceń i kontroli.

Następujące opcje obsługują połączenia urządzeń efemerycznych:

  • Połączenie urządzenia i wysyłać dane telemetryczne przy użyciu protokołu HTTP:

    Usługa IoT Central obsługuje klientów urządzeń korzystających z interfejsu API HTTP do wysyłania danych telemetrycznych. Aby dowiedzieć się więcej, zobacz dokumentację interfejsu API wysyłania zdarzeń urządzenia.

    Uwaga

    Użyj usługi DPS do aprowizowania i rejestrowania urządzenia w usłudze IoT Central przed użyciem interfejsu API HTTP do wysyłania danych telemetrycznych.

  • Łączenie urządzeń za pomocą mostka urządzeń usługi IoT Central w trybie bezstanowym:

    Wdrażanie mostka urządzeń usługi IoT Central jako funkcji platformy Azure. Funkcja akceptuje przychodzące dane telemetryczne jako żądania HTTP i przekazuje je do usługi IoT Central. Mostek urządzeń usługi IoT Central integruje się z usługą DPS i automatycznie obsługuje aprowizację urządzeń.

    Aby dowiedzieć się więcej, zobacz repozytorium GitHub mostka urządzeń usługi Azure IoT Central.

  • Użyj mostka urządzeń usługi IoT Central w trybie bezstanowym, aby połączyć chmury zewnętrzne:

    Mostek urządzeń usługi Azure IoT Central umożliwia przekazywanie komunikatów do usługi IoT Central z innych chmur IoT, takich jak SigFox, Particle i The Things Network.

    Aby dowiedzieć się więcej, zobacz repozytorium GitHub mostka urządzeń usługi Azure IoT Central.

Przekształcanie danych i niestandardowe obliczenia na ruchu przychodzącym

Niektóre scenariusze wymagają telemetrii urządzenia rozszerzonej o dane z systemów zewnętrznych lub magazynów. Rozszerzanie danych telemetrycznych przed dotarciem do usługi IoT Central umożliwia korzystanie z rozszerzonych danych funkcji, takich jak pulpity nawigacyjne i reguły.

Niektóre scenariusze wymagają przekształcenia danych telemetrycznych przed dotarciem do usługi IoT Central. Na przykład przekształcanie danych telemetrycznych ze starszych formatów.

Następujące opcje są dostępne dla przekształceń niestandardowych lub obliczeń przed pozyskiwaniem danych telemetrycznych przez usługę IoT Central:

  • Użyj usługi IoT Edge:

    Użyj modułów niestandardowych w usłudze IoT Edge na potrzeby przekształceń niestandardowych i obliczeń. Użyj usługi IoT Edge, gdy urządzenia korzystają z zestawów SDK urządzeń Usługi Azure IoT.

  • Użyj mostka urządzeń usługi IoT Central:

    Użyj kart mostka urządzeń usługi IoT Central na potrzeby niestandardowych przekształceń i obliczeń.

Aby dowiedzieć się więcej, zobacz Przekształcanie danych dla usługi IoT Central.

Następne kroki

Jeśli jesteś deweloperem urządzenia i chcesz zapoznać się z kodem, sugerowanym następnym krokiem jest utworzenie i połączenie aplikacji klienckiej z aplikacją usługi Azure IoT Central.

Jeśli chcesz dowiedzieć się więcej na temat implementacji urządzeń, zobacz Implementacja urządzeń i najlepsze rozwiązania dotyczące usługi IoT Central.

Aby dowiedzieć się więcej na temat korzystania z usługi IoT Central, sugerowanymi kolejnymi krokami są wypróbowanie przewodników Szybki start, począwszy od artykułu Tworzenie aplikacji usługi Azure IoT Central.