Moduły platformy ITS — jeden system, wiele warstw funkcjonalnych.
Od zbierania i nadzorowania danych, przez automatyzację i wizualizację, po replikację i moduły analityczne — poniżej opis poszczególnych modułów wchodzących w skład platformy ITS oraz sposób, w jaki ze sobą współpracują.
Dwanaście modułów w czterech warstwach oraz otoczenie systemowe platformy.
Moduły ITS pogrupowane są tematycznie — od zarządzania i nadzoru, przez zbieranie i przepływ danych, po automatyzację, wizualizację i analitykę. Osobno opisane zostało otoczenie systemowe, czyli udostępnianie danych narzędziom pracującym poza platformą.
Zarządzanie i nadzór
Zbieranie, przepływ i replikacja danych
Automatyzacja i wizualizacja
Moduły analityczne
Otoczenie systemowe i integracja dalsza
Panel administratora — centralna konfiguracja modułów i dostępów.
Panel administratora to miejsce zarządzania modułami platformy ITS i ich konfiguracją. Ustawiane są w nim główne parametry pracy instancji, ustawienia sieciowe, konfiguracja poszczególnych modułów oraz ustawienia dostępów — użytkownicy, role i poziomy uprawnień.
Konfiguracja modułów jest utrzymywana w jednym miejscu i stamtąd rozchodzi się do modułów platformy.
Konfiguracja modułów platformy i ich głównych ustawień.
Ustawienia sieciowe i parametry komunikacji instancji.
Zarządzanie użytkownikami, rolami i poziomami dostępu.
Audyt zmian konfiguracji na poziomie instancji.
Panel administracyjny jest punktem, w którym utrzymanie instancji przestaje być rozproszone po kilku narzędziach.
Sprawdza się tam, gdzie o instalacji decyduje kilka osób o różnym zakresie odpowiedzialności, a konfiguracja musi zostać uporządkowana i udokumentowana.
Rozdzielenie uprawnień między operatorów, techników i administratorów, bez współdzielenia jednego konta na całą zmianę.
Spójne ustawienia sieciowe i konfiguracja modułów prowadzone z jednego panelu, także gdy instancji jest kilka.
Historia zmian konfiguracji przydatna przy przeglądach wewnętrznych i przy odtwarzaniu stanu po awarii.
Monitoring systemu — nadzór nad kondycją samej instancji.
Monitoring systemu obserwuje stan techniczny instancji ITS — wykorzystanie zasobów obliczeniowych, pamięci i przestrzeni dyskowej, a także status działających usług platformy. Jest to narzędzie diagnostyczne samej platformy, nie warstwy pomiarowej; jakością i kompletnością odczytów zajmuje się Monitoring danych.
Dzięki bieżącemu podglądowi kondycji systemu można zareagować na rosnące obciążenie lub kończące się zasoby, zanim wpłynie to na pracę platformy. Moduł nie prowadzi pełnego zapisu historii pracy systemu — utrzymuje listę ostatnich zdarzeń, czyli momentów, w których stan techniczny odbiegł od normalnego: restartów usług, przekroczeń zajętości zasobów, utraty połączeń.
Monitorowanie zasobów instancji w czasie rzeczywistym.
Sygnalizacja odchyleń od normy technicznej.
Historia ostatnich zdarzeń systemowych.
Nadzór nad wieloma instancjami jednocześnie.
Monitoring systemu odpowiada na pytanie, czy sama platforma pracuje poprawnie.
To narzędzie diagnostyczne dla instancji ITS. Sprawdza się tam, gdzie instalacja pracuje bez stałej obsługi technicznej, a problem po stronie platformy trzeba zauważyć wcześniej niż jego skutki.
Zatrzymana usługa, rosnące obciążenie albo kończąca się przestrzeń dyskowa widoczne w jednym miejscu.
Nadzór nad instancjami pracującymi w obiektach bez obsługi technicznej, gdzie nikt nie sprawdzi urządzenia na miejscu.
Zdarzenia z ostatniego okresu jako podstawa do rozbudowy zasobów albo interwencji serwisowej.
Monitoring danych — progi, alarmy i odchylenia w danych.
Monitoring danych obserwuje pomiary napływające do platformy i porównuje je ze zdefiniowanymi progami. Dla metryki dostępnych jest sześć poziomów progowych — trzy po stronie dolnej i trzy po stronie górnej — co pozwala odróżnić lekkie odchylenie od stanu wymagającego natychmiastowej reakcji.
Poziomy oznaczane są kolejno jako 3Low, LowLow i Low po stronie dolnej oraz Hi, HiHi i 3Hi po stronie górnej. Progi Low i Hi wyznaczają granicę zakresu normalnej pracy, LowLow i HiHi odpowiadają odchyleniu wymagającemu uwagi, a 3Low i 3Hi — przekroczeniu krytycznemu. Poziomy definiowane są osobno dla poszczególnych metryk, więc ta sama skala nie musi obowiązywać dla temperatury i dla ciśnienia.
Stopniowanie progów ma znaczenie praktyczne: pozwala rozdzielić powiadomienia. Wejście w zakres Low lub Hi może trafiać wyłącznie na pulpit operatora, LowLow i HiHi uruchamiać powiadomienie do utrzymania ruchu, a 3Low i 3Hi — alarm o najwyższym priorytecie. Dzięki temu odbiorcy nie są zasypywani zdarzeniami o niskiej istotności.
Gdy wartość przekroczy zdefiniowany próg, moduł rejestruje zdarzenie alarmowe, które może zostać wykorzystane przez moduł dashboardowy do wizualizacji lub przez moduł automatyzacji do uruchomienia dalszej reakcji.
Zdarzenie alarmowe nie jest pojedynczym punktem w czasie. Jeśli w trakcie jego trwania wartość wejdzie na kolejny próg, moduł rejestruje zmianę istotności — na przykład przejście z poziomu Hi na HiHi — bez zamykania i otwierania nowego zdarzenia. Dla przebiegu, który kilkukrotnie zmienia poziom, powstaje jeden wpis, a nie seria niepowiązanych alarmów.
Zapisywane są przy tym dwie informacje o istotności: poziom, od którego alarm się zaczął, oraz najwyższy poziom osiągnięty przez cały czas trwania stanu alarmowego. To rozróżnienie ma znaczenie przy analizie — pokazuje zarówno moment, w którym proces zaczął wychodzić poza zakres, jak i to, jak daleko odszedł od normy zanim wrócił.
Historia alarmów zawiera więc dla poszczególnych metryk: moment pierwszego przekroczenia wraz z jego poziomem, najwyższy odnotowany poziom, moment powrotu w zakres oraz łączny czas trwania stanu alarmowego.
Progi nie są konfiguracją oderwaną od danych. Do rekordów historii metryki dopisywane są progi obowiązujące w momencie zapisu, więc konfiguracja z danego okresu zostaje w historii razem z odczytami.
Zmiana progów obowiązuje od chwili jej wprowadzenia — dla danych bieżących i kolejnych zdarzeń. Historia pozostaje jednak czytelna: przy wpisach sprzed zmiany widoczne są progi, które wtedy obowiązywały. Dzięki temu da się odtworzyć, dlaczego dany odczyt wywołał alarm albo dlaczego go nie wywołał, mimo że dziś ta sama wartość byłaby oceniona inaczej.
Ma to znaczenie przy analizie wstecznej i przy audytach. Bez zapisanych progów ocena zdarzenia sprzed kilku miesięcy wymagałaby pamiętania, jaka konfiguracja obowiązywała w tamtym czasie — a przy kilkuset metrykach jest to niewykonalne.
Sześć poziomów progowych definiowanych osobno dla poszczególnych metryk.
Progi zapisywane przy rekordach historii metryki.
Rejestr zdarzeń alarmowych w czasie.
Integracja z modułem dashboardowym i automatyzacją.
Monitoring danych zamienia strumień odczytów w konkretne zdarzenie, na które da się zareagować.
Sprawdza się tam, gdzie parametr musi mieścić się w zakresie, a przekroczenie oznacza realny koszt — jakościowy, energetyczny albo formalny.
Stopniowane progi na temperaturze, ciśnieniu czy wilgotności z powiadomieniem zanim proces wyjdzie poza specyfikację.
Sygnał o odchyleniu od normalnej pracy jako wczesne ostrzeżenie przed awarią i nieplanowanym postojem.
Udokumentowane przekroczenia i ich czas, przydatne przy reklamacjach i audytach jakości.
IDC — Data collector — dane cykliczne wraz z gotowymi agregatami.
IDC zbiera dane z wielu źródeł w instalacji — czujników, sterowników, liczników i urządzeń pomiarowych — i przechowuje je jako dane cykliczne. Pomiary napływają w trybie ciągłym: temperatura, wilgotność, pH, zużycie energii i inne wielkości rejestrowane w instalacji.
Poza samą rejestracją odczytów IDC liczy dla nich agregaty: wartości minimalne, maksymalne, średnie, odchylenie standardowe oraz sumę zmian. Suma zmian ma szczególne znaczenie dla wartości monotonicznych, czyli licznikowych — pozwala wyliczyć zużycie w oknach 15-minutowych, godzinowych, dobowych i miesięcznych.
Agregaty powstają automatycznie w module, bez konieczności budowania osobnych zapytań czy przeliczeń po stronie odbiorcy. Są dostępne od razu dla dashboardów, raportów BI, analiz i pozostałych modułów platformy — zarówno dla danych bieżących, jak i historycznych. Zapisane dane cykliczne pozostają w bazie IDC, co pozwala wracać do odczytów sprzed tygodni czy miesięcy i porównywać je z bieżącym stanem instalacji.
IDC obserwuje też sytuacje, w których wartość przestaje się zmieniać. Dla powtarzającego się odczytu moduł liczy czas, przez jaki utrzymuje się ta sama wartość, oraz liczbę pomiarów zapisanych z tą wartością. To użyteczna informacja w dwóch kierunkach: może potwierdzać stabilną pracę procesu albo wskazywać, że czujnik się zawiesił i podaje wciąż ten sam odczyt.
Pomiary można identyfikować po znaczniku czasu bazy IDC albo po znaczniku pochodzącym ze źródła. Dla metryki da się włączyć trusted timestamp — wtedy zapisywany jest czas przekazany przez urządzenie pomiarowe, co ma znaczenie tam, gdzie liczy się moment samego pomiaru, a nie moment jego zapisu w bazie.
IDC definiuje też metryki pod kątem typu danych — wartości zmiennoprzecinkowych, całkowitych i tekstowych — dzięki czemu odczyty przychodzące do kolektora są od początku opisane i zapisywane w spójny sposób.
Najlepiej widać to na przykładzie licznika energii. Odczytem z takiego urządzenia jest stan licznika, czyli suma zużycia narastająca od uruchomienia — sam odczyt mówi, ile energii pobrano łącznie, ale nie mówi nic o zużyciu w danym momencie. Dopiero różnica stanu między początkiem a końcem przedziału czasu daje zużycie w tym przedziale i to właśnie liczy suma zmian.
IDC dzieli oś czasu na okna i wylicza przyrost w obrębie poszczególnych okien. Poniżej ten sam pomiar w dwóch ujęciach: po lewej surowy stan licznika rosnący w czasie, po prawej ten sam odczyt rozbity na zużycie w oknach 15-minutowych. Podświetlone pole na obu wykresach to jedno i to samo okno 08:45–09:00.
Dane w IDC są zorganizowane wokół pary urządzenie (device) i metryka. Metryka zapisywana w module ma przypisane urządzenie — bez tego przypisania nie trafia do bazy. W module rejestrowanych jest wiele urządzeń, a pod jednym urządzeniem wiele metryk. Para device + metryka jest w architekturze IDC unikalna, więc odczyt da się jednoznacznie przypisać do konkretnego punktu pomiarowego.
Na tej strukturze budowane są grupy — osobno dla urządzeń i osobno dla metryk. Jeśli w instalacji pracuje kilkanaście czujników rejestrujących temperaturę i wilgotność, urządzenia z jednego obszaru można zebrać w grupę urządzeń, a same metryki temperatury w grupę metryk o nazwie w rodzaju „Temperatury — hala A”. Dzięki temu dane są łatwiej dostępne tam, gdzie się z nich korzysta: w module dashboardowym, raportach i analizach.
Rejestracja pomiarów w trybie ciągłym jako dane cykliczne.
Agregaty liczone automatycznie: min, max, średnia, odchylenie standardowe, suma zmian.
Zużycie w oknach 15-minutowych, godzinowych, dobowych i miesięcznych.
Dostęp do danych historycznych obok danych bieżących.
Czas trwania niezmiennego odczytu i liczba powtórzonych pomiarów.
Trusted timestamp — znacznik czasu przekazany przez urządzenie pomiarowe.
Metryki definiowane pod kątem typu danych — liczbowego i tekstowego.
Grupy urządzeń i grupy metryk porządkujące strukturę danych.
IDC jest warstwą, na której opiera się dalsza praca z danymi.
Sprawdza się w instalacjach, gdzie pomiary napływają bez przerwy, a od nich zależą rozliczenia, raporty i analizy — nie tylko bieżący podgląd.
Zużycie energii, wody, sprężonego powietrza czy gazu liczone w oknach 15-minutowych, godzinowych i dobowych.
Temperatura, wilgotność, pH czy jakość wody rejestrowane w trybie ciągłym, z gotowymi agregatami do analiz.
Dane i policzone agregaty udostępniane narzędziom raportowym bez przeliczania ich po stronie odbiorcy.
Replikacja — replikacja pełnego stanu między instancjami.
Moduł replikacji odpowiada za przenoszenie danych pomiędzy instancjami platformy ITS. Replikacji podlega pełny stan: telemetria, alarmy, progi i zdarzenia, a nie wyłącznie surowe odczyty.
Kierunek replikacji nie jest narzucony. Instancja źródłowa może przekazywać dane do wielu instancji docelowych, ale możliwy jest też układ odwrotny — wiele instancji lokalnych replikuje dane do jednej instancji nadrzędnej. Ten drugi model jest podstawą konsolidacji: rozproszone zakłady, obiekty czy lokalizacje trafiają do jednego obrazu bez budowania osobnej integracji dla poszczególnych z nich.
Zreplikowany wpis niesie ze sobą metadane o swoim pochodzeniu — unikalny identyfikator, dokładny znacznik czasu oraz informację o instancji źródłowej. Dzięki temu dane z wielu lokalizacji można łączyć w jeden spójny obraz, z zachowaniem pełnej historii ich pochodzenia.
Replikacja nie ogranicza się do jednego rodzaju danych. Obejmuje moduły platformy, które gromadzą informacje o instalacji — od stanu infrastruktury, przez pomiary i alarmy, po identyfikowalność i wskaźniki produkcyjne. Zakres replikacji zależy od tego, które moduły są uruchomione w instancji źródłowej.
Replikowane są informacje o kondycji instancji i infrastruktury — dostępność usług, obciążenie zasobów, stan połączeń. Instancja nadrzędna widzi stan rozproszonych instalacji w jednym miejscu, bez logowania się do poszczególnych lokalizacji.
Replikowane są progi, alarmy i zdarzenia. Alarm wygenerowany lokalnie pojawia się w instancji nadrzędnej razem z kontekstem: metryką, wartością progu i czasem wystąpienia, więc nie trzeba go odtwarzać z surowych danych.
Replikowane są dane cykliczne wraz z policzonymi agregatami. Instancja docelowa dostaje nie tylko odczyty, ale też wartości minimalne, maksymalne, średnie, odchylenie standardowe i sumy zmian — bez potrzeby przeliczania ich po swojej stronie.
Replikowane są zapisy identyfikowalności — powiązania partii, wyrobów i parametrów procesu. Pozwala to zestawić historię produkcji z kilku zakładów w jednym widoku, z zachowaniem informacji o miejscu powstania zapisu.
Replikowane są wskaźniki dostępności, wydajności i jakości wraz ze zdarzeniami przestojów. Linie i zakłady można wtedy porównywać na wspólnej skali, zamiast zestawiać raporty przygotowywane osobno w poszczególnych lokalizacjach.
Z replikacją wiąże się osobne zagadnienie — pojedynczy punkt awarii, określany skrótem SPOF. Jest to element architektury, którego zatrzymanie przerywa zbieranie danych albo dostęp do nich. W systemach pomiarowych ma to konsekwencję trudną do odrobienia: pomiar, który nie został zapisany w czasie awarii, nie istnieje i nie da się go odtworzyć później.
W układzie, w którym jedna instancja zbiera dane z całej instalacji, tym punktem jest właśnie ona. Zatrzymanie usługi, awaria hosta albo zerwane łącze do obiektu oznacza lukę w danych cyklicznych za cały czas trwania przerwy. Ryzyko rośnie wraz z liczbą obiektów podłączonych do tej samej instancji.
Replikacja zmienia rozkład tego ryzyka. Zapis prowadzi instancja lokalna, umieszczona blisko źródła — na ITS Edge Box w obiekcie albo na osobnej maszynie wirtualnej. Dane powstają i pozostają na miejscu, więc awaria instancji nadrzędnej albo łącza nie zatrzymuje rejestracji. Po przywróceniu połączenia zaległe zapisy są replikowane wyżej i skonsolidowany obraz uzupełnia się o okres przerwy.
Replikacja w modelu jeden do wielu oraz wiele do jednego.
Konsolidacja danych z rozproszonych lokalizacji w instancji nadrzędnej.
Zakres obejmujący Monitoring systemu, Monitoring danych, IDC, Traceability i OEE.
Metadane pochodzenia przy zreplikowanych wpisach.
Replikacja rozwiązuje problem, który pojawia się przy drugiej i kolejnej lokalizacji.
Sprawdza się w organizacjach rozproszonych, gdzie dane powstają lokalnie, ale decyzje zapadają wyżej — i nikt nie chce budować integracji dla poszczególnych obiektów.
Kilka instancji lokalnych zestawionych w jeden obraz na poziomie spółki, z zachowaniem informacji o źródle.
Przepompownie, stacje uzdatniania, węzły cieplne czy punkty pomiarowe raportujące do centrali.
Kopia stanu w drugiej instancji, przydatna przy pracach serwisowych i przy odtwarzaniu danych.
Konsolidator — jeden, spójny obraz rozproszonej instalacji.
Konsolidator agreguje dane z wielu instancji platformy ITS w jednym miejscu. Instancje źródłowe przesyłają dane przez mechanizm Replikacja do instancji pełniącej rolę konsolidatora, która łączy je zachowując pełną informację o pochodzeniu.
Dzięki temu z wielu rozproszonych punktów instalacji — odrębnych maszyn, linii czy lokalizacji — można zbudować jeden, nadrzędny obraz procesu, dostępny z poziomu pojedynczej instancji.
Konsolidacja korzysta z danych dostarczonych przez replikację, więc dotyczą jej te same zależności co mechanizmu źródłowego — w tym kwestia pojedynczego punktu awarii, opisana w części poświęconej modułowi Replikacja. Przerwa w pracy instancji konsolidującej wstrzymuje aktualizację widoku zbiorczego, ale nie przerywa zapisu prowadzonego w instancjach lokalnych.
Agregacja danych z wielu instancji ITS w jednym miejscu.
Zachowanie informacji o pochodzeniu danych.
Nadrzędny obraz rozproszonej instalacji.
Podstawa dla raportowania na poziomie całej instalacji.
Konsolidator porządkuje dane, gdy pochodzą z różnych źródeł i nie są ze sobą zestrojone.
Sprawdza się tam, gdzie obraz całości trzeba złożyć z fragmentów o różnej strukturze, częstotliwości i nazewnictwie.
Wspólne wskaźniki liczone na danych z kilku instalacji, mimo różnic w konfiguracji poszczególnych z nich.
Jedno źródło dla raportów miesięcznych i kwartalnych, zamiast ręcznego składania arkuszy.
Włączenie danych z instalacji dobudowanej później do obrazu zbudowanego wcześniej.
Broker MQTT — wiele brokerów w ramach jednej instancji.
Moduł pozwala tworzyć i zarządzać wieloma niezależnymi brokerami MQTT w ramach jednej instancji ITS. Brokery działają w oddzieleniu od siebie, co pozwala oddzielić ruch danych dla różnych zastosowań, klientów lub części instalacji.
Dla poszczególnych brokerów zarządza się osobno użytkownikami i ich uprawnieniami dostępu, a także listenerami — czyli adresem IP i portem, na których broker nasłuchuje połączeń przychodzących. Broker może pracować z szyfrowaniem TLS albo bez niego. Pozwala to zbudować odizolowane od siebie kanały komunikacji w ramach jednej platformy.
Brokery i konta użytkowników definiowane są dla całej infrastruktury z poziomu platformy. Daje to pełen zakres kontroli nad komunikacją przechodzącą przez system — wiadomo, kto się łączy, którym kanałem i z jakimi uprawnieniami.
Wiele niezależnych brokerów w ramach jednej instancji.
Zarządzanie użytkownikami i uprawnieniami per broker.
Listenery — adres IP i port nasłuchu ustawiane per broker.
Izolacja ruchu danych między brokerami.
Broker MQTT decyduje o tym, kto i którym kanałem rozmawia z platformą.
Sprawdza się w instalacjach, w których urządzenia i systemy różnych dostawców korzystają ze wspólnej infrastruktury komunikacyjnej.
Osobne brokery i konta dla różnych obszarów instalacji, bez mieszania ruchu między nimi.
Kontrola nad tym, kto się łączy, którym listenerem i z jakimi uprawnieniami — istotna przy podejściu zgodnym z NIS2.
Wydzielony kanał dla zewnętrznego dostawcy, ograniczony do uzgodnionego zakresu danych.
LoRaWAN Network Server (LNS) — serwer sieciowy LoRaWAN zintegrowany z platformą.
LNS to obsługa infrastruktury LoRaWAN wbudowana w platformę ITS. Dzięki niemu można integrować rozwiązania bezprzewodowe tam, gdzie doprowadzenie okablowania jest kosztowne albo praktycznie niewykonalne — w halach produkcyjnych, magazynach, obiektach technicznych i instalacjach rozproszonych na dużym terenie.
Bramy LoRaWAN przesyłają dane z urządzeń końcowych do LNS, który je odbiera i przekazuje dalej do warstwy zbierania danych, skąd trafiają do pozostałych modułów platformy — tak samo, jak dane z innych źródeł. LoRaWAN jest jedną z dróg wejścia danych do ITS, obok pomiarów przewodowych, sterowników i systemów nadrzędnych.
Odbiór danych z sieci LoRaWAN nie kończy się na ich zapisaniu. LNS jest zintegrowany z modułami platformy, więc odczyty z urządzeń bezprzewodowych mogą zasilać IDC, a przez niego również Traceability i OEE — bez pośredniczącego połączenia po stronie klienta i bez budowania osobnej warstwy integracyjnej. Zakres zależy od tego, które moduły są uruchomione w instancji.
LNS może pracować w dwóch układach, zależnie od skali i charakteru instalacji. Poza pomiarami prowadzonymi lokalnie ITS sprawdza się w rozmaitych aplikacjach pomiarowych, gdzie dane są gromadzone na brzegu sieci, a następnie replikowane wyżej. Poniżej oba warianty.
Wariant brzegowy. Serwer sieciowy LoRaWAN i IDC pracują bezpośrednio na urządzeniu w obiekcie, więc dane są gromadzone lokalnie — także wtedy, gdy łącze do centrali jest chwilowo niedostępne. Sprawdza się w instalacjach pomiarowych mniejszej skali: pojedyncza hala, obiekt techniczny, rozproszony punkt pomiarowy. Zgromadzone dane mogą być następnie replikowane do instancji nadrzędnej.
Wariant centralny. Serwer sieciowy działa w instancji wirtualnej i obsługuje bramy z wielu lokalizacji naraz. Ten układ jest przeznaczony do zarządzania rozległymi sieciami LoRaWAN — liczonymi w tysiącach, a w większych wdrożeniach w dziesiątkach tysięcy urządzeń — wraz z ich cyklem życia: rejestracją, kluczami, przypisaniem do bram i monitorowaniem łączności.
Liczby i konfiguracje pokazane na schematach są przykładem, a nie ograniczeniem. Rozbudowa instalacji o kolejne urządzenia, bramy i lokalizacje jest w tej architekturze przewidziana i nie wymaga przebudowy warstwy zbierania danych.
Obsługa infrastruktury LoRaWAN wbudowana w platformę.
Zarządzanie bramami, urządzeniami końcowymi i ich cyklem życia.
Zasilanie danymi modułów IDC, Traceability i OEE bez warstwy pośredniej.
Praca na brzegu sieci lub centralnie, z dalszą replikacją danych.
LNS otwiera instalację na pomiary tam, gdzie kabel nie dotrze albo nie ma ekonomicznego uzasadnienia.
Sprawdza się w obiektach istniejących, rozległych terenowo i w miejscach, gdzie doprowadzenie okablowania oznaczałoby przebudowę.
Rozbudowa sieci pomiarowej w czynnym obiekcie, bez prowadzenia nowych tras kablowych.
Wariant brzegowy z lokalnym zbieraniem danych i późniejszą replikacją do instancji nadrzędnej.
Wariant centralny obsługujący bramy z wielu lokalizacji i sieci liczone w tysiącach urządzeń.
Automatyzacja i integracje low-code — przepływy danych bez programowania.
Moduł pozwala budować przepływy danych i integracje między systemami w sposób wizualny — z gotowych bloków łączonych w schemat. Przepływ zestawia źródło danych, przekształcenie, warunek i miejsce docelowe, a jego działanie widać wprost na rysunku.
Przepływy uruchamiają się automatycznie w reakcji na zdarzenia z platformy — na przykład alarm zarejestrowany przez moduł Monitoring danych lub nowy wpis w module Traceability — i mogą prowadzić do akcji po stronie systemów zewnętrznych.
Środowisko nie jest zamkniętym konfiguratorem. Bloki funkcyjne programuje się w języku JavaScript, więc obok gotowych elementów dostępna jest własna logika: przeliczanie i normalizacja wartości, filtrowanie, łączenie kilku źródeł w jeden rekord, obsługę formatów niestandardowych czy wystawienie własnego interfejsu API. Prosty przepływ powstaje z samych bloków; tam, gdzie potrzeba czegoś więcej, kod dopisuje się w tym samym miejscu.
Takie podejście pozwala zbudować w ramach platformy własny obszar aplikacyjny — zestaw przepływów realizujących logikę specyficzną dla danej instalacji, bez stawiania osobnego systemu obok ITS i bez utrzymywania dodatkowej integracji między nimi.
Do dyspozycji jest szeroki zestaw gotowych bloków komunikacyjnych. Obejmuje protokoły spotykane w automatyce, standardowe protokoły sieciowe, wymianę plików i baz danych, powiadomienia, a także bloki łączące przepływ bezpośrednio z modułami platformy — zapis do IDC czy rejestrację wpisu w Traceability odbywa się jednym elementem, bez budowania warstwy pośredniej.
Skala tego katalogu jest znacznie większa, niż pokazują powyższe zestawienia. Publiczna biblioteka komponentów tego środowiska liczy ponad pięć tysięcy bloków i gotowych przepływów udostępnionych przez społeczność — od protokołów przemysłowych, przez usługi chmurowe i bazy danych, po narzędzia pomocnicze. Powyższe listy wskazują to, co najczęściej wykorzystywane w instalacjach przemysłowych, a nie granicę możliwości.
Za środowiskiem stoi duża i aktywna społeczność. W internecie dostępna jest obszerna dokumentacja, fora, kursy i tysiące gotowych przepływów do pobrania i przerobienia pod własne potrzeby, więc rozwiązania typowych problemów zwykle są już opisane. To realnie skraca czas budowy przepływu i obniża próg wejścia dla osoby, która nie programuje na co dzień.
Pomocne są tu również modele AI. Ponieważ bloki funkcyjne pisze się w JavaScript, a same przepływy zapisywane są w formacie JSON, modele językowe dobrze radzą sobie z przygotowaniem fragmentów kodu funkcji, przekształceń danych czy szkieletu całego przepływu. Otrzymany kod wystarczy wkleić do bloku i dostosować do własnych nazw metryk — to jeden z powodów, dla których budowanie integracji w tym module jest osiągalne również dla zespołów bez zaplecza programistycznego.
Poniżej kilka typowych obszarów zastosowania, pokazanych jako schematy przepływów. Bloki wejściowe zaznaczono kolorem cyjanowym, bloki modułów ITS — indygo, a bloki przekształceń i akcji pozostają neutralne.
Pokazane przepływy są przykładami układów, a nie zamkniętą listą. Kolejność bloków wynika z logiki procesu i można ją swobodnie układać, a raz zbudowany przepływ da się skopiować i wykorzystać w kolejnej instalacji.
Przepływy budowane wizualnie, z gotowych bloków.
Logika własna w JavaScript wewnątrz bloków funkcyjnych.
Bloki komunikacyjne dla protokołów automatyki i sieci.
Bezpośrednie połączenie z IDC, Traceability i pozostałymi modułami.
Środowisko low-code jest miejscem, w którym platforma dopasowuje się do instalacji, a nie odwrotnie.
Sprawdza się tam, gdzie standardowa ścieżka danych nie wystarcza — bo protokół jest nietypowy, format wymaga przeliczenia albo potrzebna jest własna logika.
Odczyt ze sterowników i urządzeń komunikujących się protokołami spoza standardowej ścieżki platformy.
Własny interfejs API nad danymi platformy, dopasowany do wymagań systemu po drugiej stronie.
Powiadomienia, zapisy i żądania do systemów zewnętrznych wyzwalane jednym zdarzeniem.
Moduł dashboardowy — dane w formie widoków i raportów.
Moduł dashboardowy prezentuje dane z platformy w formie konfigurowalnych paneli — wykresów, tabel i wskaźników, dopasowanych do potrzeb konkretnego odbiorcy: operatora, kierownika produkcji czy zarządu.
Panele korzystają ze wspólnego źródła danych platformy — informacji zebranych przez IDC, przetworzonych przez moduł Monitoring danych, Traceability czy OEE — i są dostępne z poziomu przeglądarki, bez instalowania czegokolwiek po stronie odbiorcy.
Moduł opiera się na komponencie open source, zainstalowanym w instancji ITS i zintegrowanym wewnętrznie z pozostałymi modułami platformy. Instalacją, integracją i utrzymaniem zajmuje się IoT Solution — po stronie odbiorcy zostaje budowanie widoków. Dzięki temu bogaty katalog typów wizualizacji, dostępnych standardowo w takim komponencie, jest od razu podłączony do danych z instalacji.
Budowanie widoku polega na wybraniu źródła danych, typu panelu i zakresu czasu — bez pisania kodu. Zaawansowane układy powstają przez składanie paneli w jeden pulpit, dodanie filtrów i zmiennych oraz ustawienie progów kolorystycznych.
Poniżej przegląd typów wizualizacji dostępnych w module. Dobór panelu zależy od pytania, na które ma odpowiadać widok: inaczej pokazuje się przebieg w czasie, inaczej stan bieżący, a jeszcze inaczej rozkład czy strukturę instalacji.
Przebieg wartości w czasie. Kilka metryk na jednym panelu, wspólna oś czasu, obszar pod krzywą, progi i adnotacje zdarzeń.
Porównanie wartości między przedziałami czasu albo między obiektami. Naturalny sposób pokazania zużycia w oknach 15-minutowych czy dobowych.
Rozkład wartości pomiaru. Pokazuje, w jakim zakresie proces pracuje najczęściej i jak szerokie jest rozrzucenie odczytów.
Zależność jednej wielkości od drugiej — na przykład temperatury od obciążenia albo zużycia od wydajności linii.
Pojedynczy odczyt w dużym formacie, z przebiegiem w tle i kolorem zmieniającym się po przekroczeniu progu.
Wartość na tle zakresu pracy, z zaznaczonymi progami. Czytelny z dystansu, więc sprawdza się na ekranach w hali.
Zestaw pasków poziomych lub pionowych. Wygodny, gdy trzeba porównać stan kilkunastu punktów pomiarowych naraz.
Przebieg zestawiony z pasmem dopuszczalnym i linią progu, co od razu pokazuje, kiedy proces wychodzi poza założony zakres.
Dane w wierszach i kolumnach, z sortowaniem, filtrowaniem, kolorowaniem komórek i kolumnami wyliczanymi na podstawie pozostałych.
Udział składowych w całości — na przykład podział zużycia energii między obszary albo struktura przyczyn przestojów.
Strumień wpisów tekstowych z filtrowaniem i wyszukiwaniem. Przydatny przy zdarzeniach, komunikatach i danych tekstowych.
Wartości jako intensywność koloru w siatce czasu. Ujawnia powtarzalne wzorce, których nie widać na wykresie liniowym.
Pasy pokazujące, w jakim stanie znajdował się obiekt w kolejnych przedziałach — praca, postój, awaria, przezbrojenie.
Punkty pomiarowe naniesione na podkład geograficzny, z wartościami i progami. Przydatna przy instalacjach rozproszonych terenowo.
Własny rysunek instalacji z wartościami osadzonymi w wybranych miejscach — schemat węzła, linii, rozdzielni czy zbiornika.
Obiekty i relacje między nimi w formie grafu. Ułatwia pokazanie struktury instalacji i zależności między jej elementami.
Panele składa się w pulpity, a te grupuje w foldery i przypisuje do ról. Widok można zawęzić zmiennymi — wyborem linii, obszaru, urządzenia czy grupy metryk — bez tworzenia osobnego pulpitu dla poszczególnych przypadków. Zakres czasu jest wspólny dla całego widoku, z gotowymi predefiniowanymi przedziałami i możliwością odświeżania w tle. Pulpity można udostępniać w trybie pełnoekranowym na monitorach w hali, eksportować do pliku oraz osadzać w innych narzędziach.
Szeroki katalog typów paneli dostępny standardowo w module.
Budowanie widoków bez pisania kodu, z poziomu przeglądarki.
Zmienne, filtry i progi kolorystyczne wspólne dla całego pulpitu.
Widoki dopasowane do roli — operatora, kierownika, zarządu.
Moduł dashboardowy jest tym, co odbiorca danych widzi na co dzień.
Sprawdza się wszędzie tam, gdzie te same dane muszą trafić do osób o różnych potrzebach — od operatora przy maszynie po zarząd.
Widoki czytelne z dystansu, w trybie pełnoekranowym na monitorach w hali.
Zestawienia okresowe i porównania obszarów dla kierownictwa produkcji i utrzymania ruchu.
Punkty pomiarowe naniesione na mapę albo na własny schemat instalacji.
Traceability — pełna historia procesu, osadzona w strukturze instalacji.
Traceability rejestruje dane powiązane z konkretnymi obiektami w instalacji — produktami, ich podzespołami czy punktami pomiarowymi, wynikami testów itp. Definiowane są typy obiektów oraz konkretne obiekty tego typu, a moduł rejestruje przypisane do nich wartości wraz z dokładnym znacznikiem czasu.
Dla bardziej złożonych zastosowań moduł oferuje Custom Data Blocks — możliwość rejestrowania wielowartościowego zestawu danych różnych typów pod jednym wspólnym znacznikiem czasu, dopasowanego do struktury danej instalacji. Dzięki temu do konkretnej części można przypisać cały zestaw pomiarów zebranych w trakcie jej wytwarzania — przebieg temperatury, ciśnienia czy innego parametru procesu. Historia identyfikowalności zawiera wtedy nie tylko rekord informacyjny z wartościami właściwości, ale też odpowiadający mu zbiór danych pomiarowych. Traceability korzysta z platformowego mechanizmu Replikacja, dzięki czemu pełna historia procesu jest dostępna na wielu instancjach ITS jednocześnie, z zachowaniem informacji o pochodzeniu wpisów.
Strukturę opisu buduje się na właściwościach obiektu — properties, w skrócie prop. Typ obiektu określa, jakie właściwości mają obiekty tego rodzaju: ich nazwy i typy danych, na przykład tekst dla numeru seryjnego, liczbę dla wyniku pomiaru, wartość logiczną dla rezultatu testu. Konkretny obiekt przechowuje wartości tych właściwości.
Właściwość można zapisać jednorazowo, jak numer seryjny nadany przy utworzeniu obiektu, albo rejestrować wielokrotnie, gdy wartość zmienia się na kolejnych etapach procesu. W obu przypadkach zapis ma dokładny znacznik czasu, więc widoczny jest nie tylko aktualny stan obiektu, ale też droga, którą do niego doszedł.
Identyfikowalność rzadko kończy się na jednym stanowisku. W praktyce zapis powstaje tam, gdzie realizowana jest operacja — przy gnieździe produkcyjnym, na linii, w konkretnym obiekcie — a obraz całości potrzebny jest poziom wyżej. Traceability w ITS jest zbudowane tak, żeby oba te poziomy dało się połączyć bez przenoszenia danych ręcznie.
Na poziomie stanowiska zapis prowadzi lokalna instancja, najczęściej na ITS Edge Box. Dane powstają i pozostają w miejscu produkcji, więc rejestracja działa również wtedy, gdy łącze do centrali jest chwilowo niedostępne. Zapisy są następnie replikowane wyżej — do instancji nadrzędnej, na przykład ITS VM — gdzie moduł Konsolidator zestawia je w jeden obraz. Metadane pochodzenia zostają przy wpisach, więc na poziomie systemowym nadal wiadomo, z którego gniazda i z której instancji pochodzą poszczególne zapisy.
Drugi wymiar tej struktury to genealogia wyrobu. Zapis identyfikowalności nie jest płaską listą zdarzeń — może odwoływać się do innych zapisów. Kiedy z dwóch komponentów powstaje wyrób złożony, nowy trace przechowuje odwołania do zapisów części, z których został zbudowany.
Przykład poniżej. Na jednym gnieździe produkowane jest kolanko i powstaje jego trace, na drugim trójnik ze swoim własnym zapisem. Oba trafiają na stanowisko montażu, gdzie powstaje nowy numer wyrobu wraz z nowym zapisem — a ten zawiera odwołania do obu zapisów składowych. Od gotowego wyrobu prowadzi to do konkretnych partii komponentów i warunków, w jakich powstały. Od strony komponentu — do wyrobów, w których został użyty.
Struktura ta jest wielopoziomowa. Wyrób złożony może być składnikiem kolejnego wyrobu, a jego trace stanie się wtedy zapisem podrzędnym na wyższym poziomie. Dzięki temu identyfikowalność prowadzona jest od pojedynczego komponentu aż po partię wysyłkową, również gdy kolejne etapy realizowane są w różnych gniazdach albo w różnych lokalizacjach.
Typy obiektów z definicją właściwości (prop).
Wartości właściwości zapisywane ze znacznikiem czasu.
Custom Data Blocks dla złożonych zestawów danych.
Pełna historia dostępna na wielu instancjach dzięki Replikacja.
Traceability odpowiada na pytanie, co dokładnie działo się przy konkretnej partii albo konkretnym wyrobie.
Sprawdza się tam, gdzie historia procesu ma znaczenie formalne — przy reklamacjach, audytach i wymaganiach odbiorcy.
Powiązanie partii i wyrobu z parametrami procesu, w jakich powstał.
Odtworzenie warunków z konkretnego dnia i zmiany, bez przeszukiwania surowych danych.
Zapis złożonych zestawów danych z kolejnych etapów pod jednym wspólnym identyfikatorem.
OEE — efektywność wykorzystania maszyn w jednym wskaźniku.
OEE wylicza wskaźnik efektywności wykorzystania maszyn na podstawie danych zarejestrowanych przez platformę — czasu pracy, przestojów oraz wyników produkcji powiązanych z konkretnymi obiektami.
Wynik końcowy rozbijany jest na trzy składowe — dostępność, wydajność i jakość — co pozwala precyzyjnie wskazać, który obszar procesu ma największy wpływ na końcowy wynik, w wybranym okresie i dla wybranego obiektu.
Automatyczne wyliczanie wskaźnika OEE.
Rozbicie na dostępność, wydajność i jakość.
Historia wskaźników w wybranym okresie.
Powiązanie z konkretnymi obiektami i zmianami produkcyjnymi.
OEE zamienia rozproszone informacje o pracy maszyn we wskaźnik, który da się porównywać.
Sprawdza się tam, gdzie trzeba wiedzieć nie tylko, ile wyprodukowano, ale też ile potencjału zostało niewykorzystane i dlaczego.
Dostępność, wydajność i jakość liczone na danych z instalacji, a nie z ręcznych zestawień.
Zdarzenia postojów z czasem trwania i przyczyną, jako podstawa do działań naprawczych.
Wspólna skala dla linii i obiektów, także gdy dane pochodzą z osobnych instancji.
ITS to punkt startowy, nie końcowy.
To nie jest kolejny moduł platformy, tylko jej właściwość. Dane zebrane przez ITS nie zostają zamknięte w jednym systemie — platforma udostępnia je dalej, narzędziom już pracującym w zakładzie albo w firmie.
Udostępniane są zarówno odczyty surowe, jak i to, co powstało z nich wewnątrz platformy: dane cykliczne, policzone agregaty, zapisy identyfikowalności, wskaźniki OEE, alarmy oraz informacje o stanie instalacji. Kanałem wymiany jest interfejs API, połączenie z bazą danych, MQTT albo OPC UA — dobierane do środowiska IT po drugiej stronie.
Powyższy zestaw jest przykładem, a nie zamkniętą listą. ITS integruje się również z innymi systemami firm trzecich, dopasowanymi do konkretnego środowiska informatycznego po stronie odbiorcy.
Udostępnianie danych na zewnątrz nie odbywa się kosztem bezpieczeństwa. Dostęp do danych instancji ITS jest szyfrowany — dotyczy to zarówno transmisji, jak i samego uwierzytelnienia. Zabezpieczenia projektowane są w oparciu o wymagania stawiane przez dyrektywę NIS2: segmentację sieci, kontrolę dostępu i lokalne przetwarzanie danych.
Uprawnienia opierają się na dwóch elementach: kontach z hasłami oraz kluczach i certyfikatach. Konto rozstrzyga, kto się łączy i do jakiego zakresu danych ma dostęp. Klucz i certyfikat zabezpieczają samo połączenie i potwierdzają tożsamość systemu po drugiej stronie — bez nich poprawne hasło nie wystarczy, żeby uzyskać dostęp.
Certyfikaty wystawia sama instancja ITS, a dostęp otrzymuje ten system, dla którego administrator je wygenerował. Uprawnienia są więc przypisane do konkretnego odbiorcy, a nie do ogólnego kanału — odebranie certyfikatu odcina jedno połączenie, nie naruszając pozostałych.
Ma to konkretną konsekwencję po drugiej stronie integracji: narzędzie odbierające dane musi umieć obsłużyć oba elementy — dane logowania oraz certyfikat i klucz wystawiony przez instancję. Certyfikat trzeba zaimportować, przechowywać i przedstawiać przy nawiązywaniu połączenia.
To warto sprawdzić na etapie planowania integracji. Systemy klasy SCADA, MES czy ERP zwykle taką obsługę mają, ale starsze narzędzia i proste konektory bywają ograniczone do samego uwierzytelnienia hasłem, bez możliwości wczytania certyfikatu. Wtedy rozwiązaniem jest pośrednictwo przepływu w module low-code, który przyjmuje połączenie zabezpieczone certyfikatem i udostępnia dane dalej w formie akceptowalnej dla narzędzia docelowego.
Integracja ma znaczenie tam, gdzie systemy już działają i nie ma powodu ich wymieniać.
ITS wchodzi wtedy jako warstwa zbierania i porządkowania danych, a narzędzia znane odbiorcy zostają tam, gdzie były — z tą różnicą, że dostają dane, których wcześniej nie miały.
SCADA i MES otrzymują pomiary z obszarów, które wcześniej były poza ich zasięgiem.
Narzędzia BI i arkusze pracują na danych i agregatach policzonych po stronie platformy.
ERP zasilany danymi produkcyjnymi i zużyciem mediów bez ręcznego przepisywania.
