IoT Edge — konserwacja kolei i system bezpieczeństwa

Azure Blob Storage
Azure Cosmos DB
Azure IoT
Azure IoT Edge
Azure IoT Hub

W tym artykule opisano współpracę między firmą Microsoft a główną firmą kolejową w celu utworzenia rozwiązania do konserwacji i bezpieczeństwa pociągu internet-of-things (IoT).

Architektura

Diagram architektury rozwiązania przedstawiający moduły usługi IoT Edge w trackside bungalow. Moduły usługi Edge używają uczenia maszynowego do identyfikowania zagrożeń związanych z awariami. Moduł obsługi alertów przekazuje dane obrazu do usługi Azure Blob Storage. Usługa Azure Edge Hub przekazuje skojarzone metadane i komunikaty za pośrednictwem usługi Azure IoT Hub do magazynu usługi Azure Cosmos DB.

Pobierz plik programu Visio z tą architekturą.

Przepływ danych

  1. Serwer plików obrazów dołączonych do sieci (NAS) w domku torowym służy do przetwarzania i kategoryzowania obrazów kołowych pociągu. Trzy zdjęcia każdego koła tworzą zszyty obraz.
  2. Moduł sondowania usługi IoT Edge powiadamia urządzenie usługi IoT Edge, że nowe obrazy są dostępne do przetworzenia.
  3. Moduł IoT Edge ML uruchamia model uczenia maszynowego innej firmy, który przetwarza obrazy i identyfikuje obszary kół, które wymagają większej kontroli.
  4. Program obsługi alertów usługi IoT Edge przekazuje wszystkie obrazy do usługi Azure Blob Storage, począwszy od obrazów, które mają potencjalne wady i zwraca identyfikatory URI obiektów blob obrazu.
  5. Moduł usługi IoT Edge Hub kojarzy identyfikatory URI obrazu z metadanymi obrazu, takimi jak wyposażenie lub numer samochodu, oś, sygnatura czasowa i lokalizacja detektora. Moduł przekazuje metadane i alerty do usługi Azure IoT Hub.
  6. Usługa IoT Hub wysyła metadane za pośrednictwem usług Event Hubs i Azure Functions do bazy danych usługi Azure Cosmos DB.
  7. Baza danych usługi Azure Cosmos DB kojarzy metadane obrazu z identyfikatorami URI obrazów przechowywanych w usłudze Azure Blob Storage. System może używać danych z usługi Azure Cosmos DB do rozpoznawania wad, analizy trendów, konserwacji predykcyjnej i ponownego trenowania modelu uczenia maszynowego.

Składniki

W tym przykładzie wdrażamy urządzenia usługi Azure IoT Edge w trackside bungalowy przy użyciu sprzętu klasy serwera z dostosowanymi kartami automatyzacji przemysłowej i jednostkami przetwarzania graficznego (GPU) w celu uzyskania wydajności.

Usługa IoT Edge składa się z trzech składników:

  • Moduły usługi IoT Edge to kontenery , które mogą uruchamiać składniki platformy Azure, innych firm lub niestandardowych.

    Moduły IoT Edge ML mogą obsługiwać usługę Azure Machine Edukacja, modele uczenia maszynowego innych firm lub kod niestandardowy. W bieżącym rozwiązaniu używany jest model uczenia maszynowego typu open source innej firmy o nazwie Cogniac do oceniania danych koła trenowania i rozpoznawania potencjalnych wad. Oprogramowanie ML używa historycznych próbek obrazów niepowodzeń o wysokim i niskim poziomie pewności w celu ponownego trenowania modelu uczenia maszynowego.

  • Środowisko uruchomieniowe usługi IoT Edge składające się z agenta IoT i usługi IoT Edge Hub działa na urządzeniach usługi IoT Edge w celu zarządzania wdrożonych modułów i koordynowania ich.

  • Interfejs oparty na chmurze umożliwia zdalne monitorowanie i zarządzanie.

System używa również następujących składników chmury platformy Azure:

  • Usługa Azure IoT Hub umożliwia bezpieczną dwukierunkową komunikację w chmurze, zarządzanie i monitorowanie modułów usługi IoT Edge.

  • Usługa Azure Blob Storage to magazyn obiektów dla chmury. Magazyn obiektów blob jest zoptymalizowany pod kątem przechowywania ogromnych ilości danych bez struktury, takich jak dane obrazu w tym przykładzie.

  • Azure Cosmos DB to w pełni zarządzana usługa bazy danych NoSQL z niskim czasem odpowiedzi oraz wysoką dostępnością i skalowalnością.

Alternatywy

  • Architektura usługi IoT Edge używa wielu modułów, ale może zostać skondensowana w jednym module, w zależności od wymagań dotyczących wydajności rozwiązania lub struktury zespołu deweloperów.

  • Firma kolejowa jest właścicielem tylko systemu wnioskowania i opiera się na dostawcy modelu uczenia maszynowego innej firmy. Czarny charakter modułu ML stanowi pewne ryzyko zależności. Długoterminowa konserwacja rozwiązania wymaga zrozumienia, w jaki sposób osoba trzecia zarządza aktywami i udostępnia je. System może używać zastępczych modułów uczenia maszynowego do przyszłych zakontraktowania, gdy zasoby uczenia maszynowego nie są dostępne.

Szczegóły scenariusza

Usługa Azure IoT Edge umożliwia przetwarzanie i przechowywanie danych bliżej źródła danych. Przetwarzanie obciążeń na brzegu umożliwia szybkie, spójne odpowiedzi z mniejszą zależnością od łączności i zasobów w chmurze.

Przybliżenie uczenia maszynowego i logiki biznesowej do źródeł danych oznacza, że urządzenia mogą reagować szybciej na lokalne zmiany i zdarzenia krytyczne. Urządzenia mogą działać niezawodnie w trybie offline lub gdy łączność jest ograniczona.

Przetwarzanie brzegowe może obejmować modele sztucznej inteligencji i uczenia maszynowego w celu tworzenia inteligentnych urządzeń brzegowych i sieci. Sieć brzegowa może określić, które dane mają być wysyłane do chmury w celu dalszego przetwarzania, oraz ustalać priorytety pilnych i ważnych danych.

Firma kolejowa chciała użyć usługi Azure IoT Edge, aby zwiększyć bezpieczeństwo i wydajność, zapewniając:

  • Proaktywna identyfikacja wadliwych składników.
  • Planowanie predykcyjne konserwacji i naprawy.
  • Ciągłe ulepszanie analiz i przewidywań.

Projekt pilotażowy rozwiązania usługi IoT Edge to system analizy kondycji koła pociągu. W tym systemie ponad 4000 detektorów torów stale monitoruje i przesyła strumieniowo dane kół z pociągów firmy. Detektory:

  • Mierzenie ciepła i siły sprzętu na torach.
  • Słuchaj niewidocznych wad łożysk kół lub pęknięć kół.
  • Zidentyfikuj brakujące lub zagubione części.

Moduły usługi Azure IoT Edge przetwarzają dane ciągłego przesyłania strumieniowego niemal w czasie rzeczywistym. Moduły usługi IoT Edge działają na sprzęcie klasy serwera w trackside bungalow, co pozwala na przyszłe równoległe wdrażanie innych obciążeń. Rozwiązanie oparte na usłudze IoT Edge:

  • Identyfikuje sprzęt zagrożony.
  • Określa pilność naprawy.
  • Generuje alerty.
  • Wysyła dane do chmury platformy Azure na potrzeby magazynu.

System analizy kondycji koła zapewnia wczesną identyfikację potencjalnych awarii sprzętu, które mogą prowadzić do wykolejenia pociągu. Firma może używać przechowywanych danych do znajdowania trendów i informowania o harmonogramach konserwacji preskrypcyjnej.

Potencjalne przypadki użycia

To rozwiązanie jest idealne dla branży transportowej, telekomunikacyjnej i produkcyjnej. Koncentruje się on na następujących scenariuszach:

  • Sieć telekomunikacyjna, która musi utrzymać 99% lub lepszy czas pracy.
  • Kontrola jakości produkcji, naprawa sprzętu i konserwacja predykcyjna w fabryce.
  • System bezpieczeństwa transportu, który musi przetwarzać dane przesyłane strumieniowo w czasie rzeczywistym z niewielkim opóźnieniem lub bez opóźnień.
  • Systemy tranzytowe, które muszą dostarczać terminowe powiadomienia i alerty.

Kwestie wymagające rozważenia

Te zagadnienia implementują filary struktury Azure Well-Architected Framework, która jest zestawem wytycznych, które mogą służyć do poprawy jakości obciążenia. Aby uzyskać więcej informacji, zobacz Microsoft Azure Well-Architected Framework.

W tym przykładzie należy wziąć pod uwagę kilka zagadnień.

Operacje

Wdrożone rozwiązanie wymaga subskrypcji platformy Azure z uprawnieniami do dodawania jednostek usługi i możliwości tworzenia zasobów platformy Azure. Aby uzyskać więcej informacji, zobacz Rejestry kontenerów i jednostki usługi.

Przepływ pracy usługi Azure Pipelines tworzy, testuje, wdraża i archiwizowa rozwiązanie usługi IoT Edge za pomocą wbudowanych zadań usługi Azure IoT Edge. Firma kolejowa hostuje lokalny system ciągłej integracji/ciągłego wdrażania (CI/CD ). Na poniższym diagramie przedstawiono architekturę metodyki DevOps na potrzeby wdrażania:

Diagram architektury metodyki DevOps.

  1. W pierwszym potoku ciągłej integracji kod wypychany do repozytorium Git wyzwala kompilację modułu usługi IoT Edge i rejestruje obraz modułu w usłudze Azure Container Registry.

  2. Ukończenie potoku ciągłej integracji wyzwala potok ciągłego wdrażania, który generuje manifest wdrożenia i wdraża moduł na urządzeniach usługi IoT Edge.

Wdrożenie ma trzy środowiska: Dev, QA i Production. Podwyższenie poziomu modułu od dewelopera do kontroli jakości i kontroli jakości do środowiska produkcyjnego obsługuje zarówno testy automatyczne, jak i ręczne.

Kompilowanie i wdrażanie rozwiązania jest również używane:

  • Interfejs wiersza polecenia platformy Azure
  • Docker CE lub Moby do kompilowania i wdrażania modułów kontenerów
  • W przypadku programowania, programu Visual Studio lub programu Visual Studio Code z platformą Docker, usługą Azure IoT i odpowiednimi rozszerzeniami języka.

Wydajność

  • System wymaga 99% czasu pracy i lokalnego dostarczania komunikatów w ciągu 24 godzin. Jakość usług (QoS) dla ostatniej mili łączności między bungalowem a platformą Azure określa QoS danych z krawędzi. Lokalni dostawcy usług internetowych (ISP) zarządzają ostatnią milą łączności i mogą nie obsługiwać wymaganych funkcji QoS dla powiadomień lub przekazywania danych zbiorczych.

  • Ten system nie ma interfejsu z kamerami kołowymi i magazynami danych zapasowych, dlatego nie ma kontroli ani możliwości zgłaszania alertów dotyczących awarii systemu aparatu lub serwera obrazów.

  • To rozwiązanie nie zastępuje istniejących wymagań dotyczących ręcznej inspekcji określonych przez firmy i federalne organy regulacyjne.

Zabezpieczenia

Zabezpieczenia zapewniają ochronę przed celowymi atakami i nadużyciami cennych danych i systemów. Aby uzyskać więcej informacji, zobacz Omówienie filaru zabezpieczeń.

Zabezpieczenia i monitorowanie to zagadnienia dotyczące systemów usługi IoT Edge. W tym przykładzie:

  • Istniejące rozwiązanie przedsiębiorstwa innej firmy obejmowało monitorowanie systemu.
  • Fizyczne bezpieczeństwo trackside bungalowów i bezpieczeństwa sieci były już w miejscu.
  • Połączenie ions z usługi IoT Edge do chmury są domyślnie bezpieczne.

Następne kroki

Projekty GitHub:

Zasoby szkoleniowe dotyczące rozwiązań: