M365Con 2027 – bezpłatna konferencja online · 11–22 Jan 2027 · 120 sessions→ m365con.net

Blog · Mirko Peters

Routing komunikatów IoT w przemyśle: jak uniknąć przeciążenia zdarzeniami

By ·

Dowiedz się, dlaczego routing komunikatów w usłudze Azure IoT Hub i usługa Event Grid to nie to samo. Poznaj sposoby projektowania architektur przemysłowego IoT bez wywoływania przeciążenia zdarzeniami.

Automatically translated with AI from the original post. Read the English original

Cover: IoT Hub Message Routing vs Event Grid — Why Telemetry and Events Are Not the Same Problem

Projektując architektury przemysłowego IoT w Azure, traktowanie ciągłej telemetrii maszyn jak dyskretnych zdarzeń systemowych prowadzi do poważnego rozrostu architektury. Ten przewodnik wyjaśnia, dlaczego strumieniowanie pomiarów szeregów czasowych za pomocą wyzwalaczy publikuj-subskrybuj zawodzi na hali produkcyjnej oraz jak właściwie rozdzielić routing komunikatów w usłudze IoT Hub i usługę Azure Event Grid.

Najważniejsze wnioski

Architektoniczna pułapka traktowania wszystkiego jak zdarzenia

Programiści oprogramowania i architekci chmurowi często wpadają w pułapkę semantyczną: wszystko, co dzieje się w określonym momencie, nazywa się „zdarzeniem”. W tradycyjnych mikrousługach lub tworzeniu aplikacji webowych kliknięcie przycisku, zapis w bazie danych i wywołanie API są traktowane jako komponenty sterowane zdarzeniami. Jednak gdy tę filozofię bezkrytycznie zastosuje się do środowisk przemysłowego internetu rzeczy (IIOT), powstają kruche systemy, które załamują się pod wpływem dużych obciążeń danymi o wysokiej częstotliwości.

Weźmy pod uwagę linię prasy pracującą w ciągłym ruchu zleceń w zakładzie produkcyjnym. Brama przemysłowa co kilka sekund przesyła odczyty temperatury, próbki wibracji, statystyki zużycia energii i liczniki cykli. Jeśli architekt kieruje każdy pojedynczy przychodzący komunikat przez broker powiadomień publikuj-subskrybuj, taki jak Azure Event Grid, każda drobna fluktuacja odczytu z czujnika uruchamia funkcję Azure, ocenia regułę w usłudze Logic Apps lub aktualizuje rekordy statusu w systemach dalszych. Choć taki wzorzec może przetrwać na małej skali jako proof of concept, szybko się degraduje wraz ze wzrostem liczby urządzeń.

Dlaczego silniki powiadomień zawodzą przy danych szeregów czasowych

Mechanizmy powiadomień są zbudowane z myślą o rzadkich, dyskretnych wystąpieniach – informują zainteresowanych subskrybentów, że coś się zmieniło i że może być wymagane działanie. Nie są zaprojektowane do odtwarzania historycznych osi czasu operacji. Gdy strumienie danych z czujników o wysokiej częstotliwości zalewają broker zdarzeń:

Routing wiadomości w usłudze IoT Hub jako płaszczyzna danych telemetrycznych

Aby zbudować niezawodną podstawę do analityki i monitorowania stanu, telemetrię trzeba traktować jak samozapisujący się dziennik produkcji. Azure IoT Hub zapewnia bezpieczną granicę komunikacji od urządzenia do chmury, w której bramy przemysłowe uwierzytelniają się za pomocą unikatowych tożsamości, przesyłają surowe dane z urządzeń do chmury i zarządzają bliźniakami urządzeń.

Routing wiadomości pełni rolę centralnego kontrolera ruchu dla tej płaszczyzny danych. Analizując właściwości wiadomości, metadane systemowe i zawartość ładunku, reguły routingu czytelnie oddzielają metryki produkcyjne, diagnostykę energetyczną i dane operacyjne, zanim trafią do odbiorców końcowych. Na przykład pojedyncza brama przemysłowa może przesyłać surowe ładunki do usług Azure Event Hubs lub Azure Storage, zasilając pulpity w usługach Microsoft Fabric i Power BI, bez konieczności uruchamiania natychmiastowego procesu operacyjnego przy każdym pojedynczym odczycie.

Obsługa przerw w sieci i znaczników czasu

Hale produkcyjne to notorycznie trudne środowiska sieciowe. Bramy często tracą łączność z internetem z powodu lokalnych zakłóceń sieci, utraty pakietów lub prac serwisowych. Podczas takich przerw bramy przemysłowe buforują lokalnie dane telemetryczne o wysokiej częstotliwości i po przywróceniu łączności przesyłają je zbiorczo.

Wynika stąd krytyczny wymóg architektoniczny: należy rozróżnić znacznik czasu źródła (moment, w którym sterownik PLC lub czujnik zarejestrował odczyt wibracji) oraz znacznik czasu odbioru w chmurze (moment, w którym IoT Hub ostatecznie przyjął partię danych). Solidny potok telemetrii opiera się na stabilnym partycjonowaniu, niezmiennych identyfikatorach wiadomości, numerach sekwencyjnych i idempotentnych odbiorcach, aby wiarygodnie odtworzyć rzeczywistość i zapewnić, że spóźnione pakiety nie zafałszują obliczeń, takich jak ogólna efektywność urządzeń (OEE).

Oddzielenie stanu łączności z chmurą od stanów produkcyjnych

Jednym z najgroźniejszych antywzorców w automatyce przemysłowej jest zakładanie, że utrata łączności z chmurą oznacza zatrzymanie fizycznych maszyn. Gdy brama przemysłowa rozłącza się z usługą Azure IoT Hub, usługa Azure Event Grid słusznie wysyła powiadomienie o rozłączeniu urządzenia, aby zaalarmować zespoły IT i OT.

To zdarzenie rozłączenia dowodzi jednak jedynie, że zmieniła się widoczność w chmurze. Tymczasem lokalny sterownik PLC pod odłączoną bramą może nadal autonomicznie prowadzić linię prasy, produkując elementy metalowe bez żadnego przestoju. Z kolei brama może utrzymywać stabilne połączenie TCP z platformą Azure, mimo że jej wewnętrzne łącze szeregowe z lokalną maszyną całkowicie przestało działać.

Architekci muszą konsekwentnie rozdzielać stany połączenia z chmurą, kondycję operacyjną bramy oraz stany zleceń produkcyjnych w systemie MES (Manufacturing Execution System). Usługa Event Grid powinna być wykorzystywana wyłącznie do otwierania postępowań wyjaśniających, aktualizowania rejestrów urządzeń lub uruchamiania zautomatyzowanych kontroli diagnostycznych, nigdy do sterowania wiarygodnymi obliczeniami produkcyjnymi.

Podsumowanie i kolejne kroki

Skuteczne projektowanie przemysłowego IoT wymaga uwzględnienia zasadniczej różnicy między gromadzeniem danych a powiadomieniami systemowymi. Telemetria odpowiada na pytanie, co zasób robił w czasie, i wymaga trwałego przechowywania, ścisłej kolejności oraz elastyczności dla wielu odbiorców dzięki routingowi wiadomości w IoT Hub. Zdarzenia odpowiadają na pytanie, co się zmieniło i czy system lub człowiek musi zareagować natychmiast, wykorzystując oddzielone mechanizmy publikacji i subskrypcji w usłudze Azure Event Grid.

Dzięki utrzymaniu tych dwóch ścieżek w rozdzieleniu unikasz rozrostu architektury, eliminujesz uciążliwe fałszywe alarmy i zachowujesz wiarygodną historię operacyjną dla całego przedsiębiorstwa.

Aby zgłębić scenariusze produkcji przemysłowej, granice operacyjne i najlepsze praktyki architektury chmury, posłuchaj pełnego odcinka i zasubskrybuj podcast M365 FM już dziś.

Często zadawane pytania

Czy usługa Azure Event Grid może służyć do przechowywania telemetrii IoT o wysokiej częstotliwości?

Nie. Usługa Event Grid jest zoptymalizowana pod kątem lekkich powiadomień w modelu publikuj-subskrybuj, a nie pod kątem wysokowolumenowego pozyskiwania danych. Brakuje jej natywnego przechowywania szeregów czasowych, możliwości odtwarzania zdarzeń oraz ścisłych gwarancji kolejności, które są niezbędne do dokładnej analizy produkcji.

Co powinno się stać, gdy zostanie wygenerowane zdarzenie rozłączenia urządzenia w usłudze Azure IoT Hub?

Zdarzenie rozłączenia urządzenia powinno uruchomić analizę techniczną lub automatyczne sprawdzenie stanu, na przykład weryfikację, czy inne bramy w tym samym segmencie sieci również przestały działać. Nie należy traktować go jako ostatecznego dowodu, że fizyczne urządzenie produkcyjne wstrzymało produkcję.

W jaki sposób narzędzia analityczne, takie jak Microsoft Fabric, pobierają telemetrię z usługi IoT Hub?

Funkcja routingu komunikatów w usłudze IoT Hub kieruje sklasyfikowane ładunki telemetrii do warstw pośredniego magazynowania lub strumieni usługi Azure Event Hubs. Platformy analityczne, takie jak Microsoft Fabric, odczytują następnie te podzielone na partycje, uporządkowane czasowo strumienie niezależnie, do celów raportowania i monitorowania stanu, nie zakłócając działań w czasie rzeczywistym.

Dlaczego kolejność komunikatów jest krytyczna dla telemetrii przemysłowej?

Maszyny przemysłowe działają w precyzyjnych sekwencjach fizycznych. Jeśli komunikaty telemetryczne dotrą lub zostaną przetworzone w niewłaściwej kolejności, obliczenia całkowitej efektywności wyposażenia (OEE), czasów cykli i wykrywania usterek ulegają zniekształceniu, co prowadzi do błędnych wniosków operacyjnych.

Azure Functions

Related articles

RSS