Opublikowano:
03 stycznia 2025 r.
Kategoria:
IOT
Klient:
SWIMER

Nowoczesny system zarządzania telemetrią dla przemysłu paliwowego, rolniczego i chemicznego

Nasz wieloletni klient, producent specjalistycznych zbiorników do przechowywania i transportu cieczy w przemyśle paliwowym, rolniczym i chemicznym, zwrócił się do nas z prośbą o opracowanie nowej wersji systemu do zarządzania urządzeniami telemetrycznymi zainstalowanymi w jego produktach. Poprzednio używany system był przestarzały i brakowało mu istotnych funkcji, takich jak zdalna konfiguracja zbiornika, powiadomienia o zdarzeniach (np. wycieku, dostawie lub pobraniu płynu), zdalne aktualizacje oprogramowania układowego i zaawansowane środki bezpieczeństwa. Ponadto miał przestarzały interfejs użytkownika i był dostępny tylko przez przeglądarkę internetową, co wymagało kosztownego serwera VPS opartego na systemie Windows Server.

Wyzwanie

Naszym głównym celem było zaprojektowanie nowoczesnej architektury systemu, która zaspokoiłaby obecne potrzeby klienta, jednocześnie uwzględniając potencjalne przyszłe wymagania, które nie zostały jeszcze w pełni zdefiniowane. Wymagało to stworzenia:

  • całkowicie nowy przepływ danych,
  • struktury danych,
  • protokół komunikacyjny między zapleczem a urządzeniami telemetrycznymi.

Ze względu na ogólny charakter wymagań, przyjęliśmy przyrostowy model rozwoju, pozwalający na elastyczność i konfigurowalność we wdrażaniu zmian w oparciu o bieżące i przyszłe potrzeby klienta.

Nasze podejście

Aby sprostać wymaganiom ekonomicznym klienta i jego decyzji o korzystaniu z zewnętrznych zasobów sprzętowych, zaproponowaliśmy wirtualny serwer prywatny (VPS ) oparty na jądrze maszyny wirtualnej (KVM ). To rozwiązanie:

  • znaczne obniżenie kosztów posiadania serwera (około 300 EUR rocznie),
  • zapewniona skalowalność dzięki wirtualizacji sprzętu w celu dostosowania zasobów w oparciu o wzrost liczby użytkowników i urządzeń.

Dla systemu backendowego wybraliśmy sprawdzone technologie:

  • Uvicorn: szybki i nowoczesny serwer ASGI obsługujący operacje asynchroniczne,
  • Apache: powszechnie znany serwer HTTP z obsługą HTTPS za pośrednictwem certyfikatów SSL/TLS,
  • InfluxDB: baza danych szeregów czasowych zaprojektowana do przechowywania i analizy danych w czasie rzeczywistym,
  • Firebase Cloud Messaging (FCM): usługa Google służąca do wysyłania powiadomień push i umożliwiająca komunikację w czasie rzeczywistym.

Wyniki i kolejne kroki

Wdrożyliśmy komunikację RESTful API między zapleczem, urządzeniami telemetrycznymi i aplikacjami użytkownika, zapewniając skalowalność systemu i łatwość integracji.

W pierwszej fazie wdrożyliśmy podstawowe funkcjonalności, takie jak:

  • monitorowanie zbiornika w czasie rzeczywistym,
  • wizualizacja danych na wykresach,
  • historia wydarzenia,
  • powiadomienia w czasie rzeczywistym,
  • lokalizacja zbiornika na mapach.

Zaprojektowaliśmy również wieloplatformowe aplikacje mobilne (Android, iOS), internetowe (PC) i smartwatch (WearOS) przy użyciu Fluttera, co pozwoliło nam skrócić czas wdrażania i zapewnić spójny interfejs użytkownika na różnych urządzeniach.

Obecnie klient korzysta z systemu z jego podstawowymi funkcjami, a my pracujemy nad drugą fazą projektu, która obejmuje zdalną konfigurację zbiornika, model oparty na subskrypcji (SaaS) i dodatkowe funkcjonalności. Zakończenie drugiej fazy planowane jest na 1. kwartał 2025 roku.

Szukasz kompleksowego rozwiązania dla systemów telemetrycznych i aplikacji wieloplatformowych? Skontaktuj się z nami – pomożemy Ci stworzyć system dostosowany do Twoich potrzeb!