How to / Oprogramowanie przemysłowe

Mobilny system SCADA od ICONICS - poradnik konfiguracji

14.10.2020 Producent: ICONICS Zastosowanie: Woda i ścieki, Energetyka, Zakłady przemysłowe
Wizerunek autora
Mobilny system SCADA MobileHMI na każde urządzenie - Android iOS lub Windows Phone

Krótko o MobileHMI

MobileHMI to rozwiązanie od ICONICS działające zarówno po stronie serwerów, jak i klientów mobilnych SCADA.

MobileHMI można zainstalować na serwerze SCADA razem z całym pakietem GENESIS64 lub jako samodzielny produkt. Jego konfiuracja przebiega za pomocą narzędzi Workbench i GraphWorX - analogicznie do innych modłów składowych naszego systemu SCADA. Za pomocą GraphWorX tworzy się projekty mobilnych interfejsów HMI, natomiast w oknie Workbench definiuje się sposób przechowywania tych ekranów na serwerze. Posiadając w licencji odpowiednich klientów, możemy wyświetlać HMI z dowolnego urządzenia z zainstalowaną aplikacją mobilną.

MobileHMI występuje również jako darmowa aplikacja kliencka na urządzenia z systemem Android, iOS lub Windows. Można ją pobrać z większości popularnych sklepów (Windows-Store, Apple App Store czy Google Play). Urządzenie mobilne, które połączy się za pomocą aplikacji z serwerem MobileHMI, może wyświetlać interfejsy, które ten serwer przechowuje. Za ich pośrednictwem możemy np. wizualizować wykresy, zmieniać wartości zmiennych lub zatwierdzać alarmy. Każde takie połączenie zajmuje jedną licencję kliencką z serwera, dopóki nie zostanie zakńczone.

Poniżej zamieszczono serię instrukcji dotyczących konfiguracji MobileHMI.

 

 


 

Tworzenie mobilnej aplikacji SCADA cz.1

Dlaczego MobileHMI? 

Jeśli interfejsy SCADA są responsywne, dostosują się do rozmiarów mniejszego ekranu. Należy jednak pamiętać, że ekrany graficzne projektowane do użytku na komputerze nie zawsze będą spełniać logistyczne wymagania urządzeń mobilnych. Telefony lub tablety różnią się od komputerów mocą obliczeniową i sposobem ich obsługi. Nie zawsze będą w stanie wyświetlić panel zawierający kilkadziesiąt zmiennych w tak płynny sposób jak PC. Problemem mogą być również wielkości niektórych przycisków po wyskalowaniu ekranu do mniejszych rozmiarów. Nie dysponując myszą, obsługa dużej ilości małych przycisków może być co najmniej uciążliwa. Są to powody, dla których warto przyjrzeć się zaleceniom dla konfiguracji mobilnych HMI oraz wdrożyć je przy użyciu narzędzi ICONICS.

Tworzenie projektu

Pierwszym etapem tworzenia interfejsu będzie stworzenie graficznego projektu w GraphWorx64. W kolejnych częściach wpisu omówione zostanie udostępnianie projektów na serwerze MobileHMI. Podczas wykonywania kolejnych kroków będą omawiane pewne kluczowe punkty pozwalające zwiększyć wydajność aplikacji mobilnej.

Należy zacząć od otworzenia nowego projektu w GraphWorx64 i przejściu do: File->New Settings. Powinno pokazać się okno "New Display" takie jak na zdjęciu obok. Na samej górze, użytkownik określa typ projektu. Na potrzeby tego wpisu, będzie to opcja "MobileHMI". Następnie, należy dokonać wyboru atrybutów, według potrzeb. Opcja "Compressed" powoduje skompresowanie interfejsu (redukcja rozmiaru), natomiast pole "Template" należy zaznaczyć, gdy tworzony interfejs ma pełnić rolę szablonu dla kolejnych projektów.

Wskazówka 1: Użycie opcji "Compressed" zmniejsza rozmiar pliku, a co za tym idzie, redukuje czas i zużycie transferu danych podczas pobierania go przez urządzenie mobilne. Dany plik jest przechowywany potem w pamięci urządzenia jako zdekompresowany, więc opcja ta nie wywołuje potrzeby ciągłych jego dekompresacji podczas ponownych wyświetleń.

Następnie, należy wybrać typ urządzenia, na jakim będzie wyświetlany interfejs. Można skorzystać z gotowych szablonów (opcja "Preset"), lub skonfigurować ustawienia samemu (opcja "Custom"). Przechodząc do ostatniej sekcji, "Advanced", można określić:

  • czy interfejs skaluje się wraz ze zmianą ekranu na którym jest wyświetlany ("Scalable"), czy zachowuje swój rozmiar ("Fixed"),
  • czy ekran zmienia rozmiar zachowując proporcje, lecz pozostawiając czasem niewykorzystane miejsce ("Uniform"),  czy wypełnia całą dostępną przestrzeń, jednak z możliwą utrata proporcji ("Fill"),
  • kolor tła,
  • typ układu projektu: "Canvas" pozwala na dowolne umieszczanie obiektów na wyświetlaczu, "Grid" pozwala na  wydzielenie przestrzeni zawierających poszczególne elementy i inteligentne wypełnianie wolnej przestrzeni, wprowadza również element responsywności.

Kombinacje w/w opcji mogą być różne w zależności od potrzeb. Niżej zostały omówione trzy koncepcje projektowe. Wszystkie zakładają jak najlepsze dopasowanie ekranu do wyświetlacza w zależności od szczegółów projektu. 

  1. Pierwsza z nich zakłada brak z góry określonych modeli urządzeń, na których wyświetlany będzie projekt. Ekrany mogą różnić się wielkością oraz rozdzielczością. W tym celu należy skonfigurować opcje tak, jak na Zdjęciu nr 1. Następnie, należy wydzielić odpowiednie przestrzenie dla dodawanych obiektów poprzez dodawanie nowych kolumn i wierszy, a także opcjonalnie całych elementów typu "Grid". Teraz, trzeba dodawać obiekty w pożądanych miejscach. Każdy element powinien być dodatkowo zawarty w "Viewbox'ie", aby lepiej skalował swoje rozmiary wraz ze zmianą wyświetla. Rozmiarem elementu zawartego w Viewbox'ie można sterować za pomocą opcji "Margin" w sekcji "Measurements" ustawień tej funkcji. Etapy przykładowej szybkiej konfiguracji przedstawiają poniższe zdjęcia.

2.  Kolejne dwa sposoby będą zakładać istnienie jednego modelu urządzeń przeznaczonego do wyświetlania projektów, lub co najmniej taką samą rozdzielczość każdego z urządzeń.

2.1. Pierwszy z nich opiera się na istnieniu dwóch warstw: jednej dla orientacji pionowej urządzenia, a drugiej dla poziomej. Użycie warstw wyklucza używanie wydzielonych przestrzeni dla składników projektu, charakterystycznych dla elementów typu „Grid”.

Aby stworzyć tego typu projekt, należy dodać dwie warstwy warstwy. Do każdej z warstw należy dodać pożądane elementy. Widoczność warstw dla danej orientacji określa opcja „OrientationVisibility” w sekcji „Declutter” w opcjach warstwy.

Zaletą tego rozwiązania jest lepsze dopasowanie do orientacji urządzenia. Do minusów należy zaliczyć potrzebę tworzenia za każdym razem dwóch wersji tego samego interfejsu.

Wskazówka 2: Aby urządzenie nie pobierało równolegle dwóch identycznych zestawów danych podczas pracy z wizualizacją, należy zmienić opcję „ReleaseDataWhenHidden” z sekcji „Declutter” na „True” dla każdej warstwy. Znacząco podniesie to efektywność oraz zminimalizuje pobór danych z sieci.

Kolejne etapy tworzenia projektu oraz konfigurację jego ustawień przedstawiają poniższe zdjęcia.

 

2.2. Drugi z nich opiera się na dynamicznym przemieszczaniu obiektów na ekranie wraz ze zmianą orientacji urządzenia. Rozwiązanie to znów wyklucza użycie obiektów typu „Grid” i podobnie jak poprzednie, będzie skalować się w pełni prawidłowo (zachowane proporcje i brak pustej przestrzeni) tylko na urządzeniach o takiej samych proporcjach ekranu.

Zalety tego rozwiązania to pełne dostosowywanie się do zmian orientacji urządzenia oraz brak potrzeby tworzenia kilku wersji tego samego interfejsu.

Wadami są: potrzeba dodawania akcji typu „Location” w zakładce „Dynamics” dla każdego elementu, który powinien się przemieścić oraz trudności w idealnym dopasowaniu końcowych położeń elementów.

Aby stworzyć opisywany projekt, należy dodać wymagane elementy dla jednej orientacji urządzenia(powinny znajdować się na jednej warstwie), następnie należy zmienić orientację i dopasować końcowe położenia obiektów za pomocą dynamicznej akcji „Location”. Jako źródło danych dla wywoływania animacji należy użyć zmiennej localsim::currentOrientation, która przyjmuje wartość 1 dla orientacji poziomej i 2 dla pionowej. Kolejne etapy tworzenia projektu oraz konfigurację jego ustawień przedstawiają poniższe zdjęcia.

 

Jeśli konfigurację zaczęto od położenia pionowego i przemieszczenie obiektów następuje do położenia poziomego, warunek na aktywację animacji powinien przyjąć postać „data==low”.

Poniższe filmiki, kończące pierwszą część wpisu, przedstawiają efekty uzyskane za pomocą każdej z trzech w/w metod.

Responsywnie („Grid”)

 

Warstwy

Przemieszczenia

Przemieszczenia

 

 

 


 

Tworzenie mobilnej aplikacji SCADA CZ. 2

Kontynuacja tworzenia projektu aplikacji mobilnej HMI będzie opierała się o koncepcję ekranu w pełni responsywnego, wykorzystującego elementy typu „Grid”, omówionego w poprzedniej lekcji. W analogiczny do przedstawionego poniżej sposobu, można kontynuować rozwój projektu również w oparciu o pozostałe dwie koncepcje (idea pozostaje ta sama, mogą pojawić się nieznaczne rozbieżności w szczegółach wykonania).

Opis tworzonej aplikacji

Załóżmy, że celem podjętych działań będzie stworzenie aplikacji pozwalającej na odczyt pewnego wskazania z dowolnego urządzenia w budynku. Budynek składa się z 3 pięter, na każdym piętrze znajdują się 3 pokoje, a w każdym pokoju 4 urządzenia

Kontynuacja projektu

Wskazówka 3: Aplikacja powinna obsłużyć 36 wskazań. Pamiętając o ograniczonych możliwościach telefonów lub tabletów względem PC oraz o ograniczeniach sieci bezprzewodowych, lepiej jest tworzyć projekt w sposób hierarchiczny. Zamiast dodawać 36 punktów danych na jednym ekranie odczytywanych równolegle warto stworzyć dodatkowe ekrany, grupujące dane z jednego pokoju lub piętra i wyświetlać je tylko w przypadku, gdy są one interesujące dla użytkownika.

Do tej pory utworzony został jedynie ekran startowy aplikacji. Po estetycznych modyfikacjach wygląda następująco.

Teraz, należy przejść do stworzenia wyświetlacza dla danego piętra oraz pokoju. Aby zaoszczędzić czas pracy najlepiej użyć globalnych aliasów przy przypisywaniu zmiennych do obiektów. Pozwoli to na stworzenie po jednym rodzaju wyświetlacza i generowanie na nim informacji pożądanych w danej chwili. Dane używane przy tworzeniu projektu to zmienne symulacyjne dostarczane przez symulator OPC. Hierarchię zmiennych w symulatorze oraz ustawienia aliasów przedstawiają poniższe zdjęcia.

Dodatkowo na potrzeby projektu zostały stworzone zmienne zliczające sumę wskazań mierników z urządzeń dla danego pokoju. Użyte zostało do tego narzędzie „Expressions” pakietu GENESIS64. Konfiguracja narzędzia przebiega w programie Workbench, a przykład jednego z 9 wyrażeń przedstawia poniższe zdjęcie.

Wskazówka 4: Aby dodatkowo zmniejszyć rozmiar tworzonych pulpitów należy dodawać do nich jak najmniej złożone obiekty. W przypadku importu zdjęć należy zmniejszyć ich rozmiar za pomocą zewnętrznych aplikacji przed importem do GraphWorX64. W przeciwnym razie, GraphWorX64 będzie przechowywał oryginał zdjęcia i zmniejszał go za każdym razem wyświetlania ekranu, co znacząco obniży efektywność działania aplikacji.

Interfejs dla danego piętra będzie składał się z wyświetlanej jego nazwy, przycisku powrotu o poziom wyżej w aplikacji oraz reprezentacji 3 pokoi. Co więcej, każda z reprezentacji 3 pokoi będzie zawierać jego nazwę oraz sumę wymaganych wskazań, pochodzących od urządzeń w danym pokoju. Najlepiej do tego nada się narzędzie „Smart Tile”, znajdujące się w zakładce „Controls” programu GraphWorX64. Są to obiekty („Kafelki”) dostosowane do potrzeb urządzeń mobilnych, pozwalające wyświetlać różne informacje w efektywny sposób. Tworzy się je rysując prostokąt, po uprzednim wybraniu tego narzędzia z zakładki „Controls”, a menu konfiguracyjne otwiera się dwukrotnie klikając myszą na nowo utworzony obiekt.

Kolejne etapy tworzenia aplikacji przedstawiają poniższe zdjęcia i filmiki.

 

Krok 1

Krok 2

Krok 3 

Krok 3

Krok 4 pokazuje zastosowanie ciekawej funkcji narzędzia „Smart Tile” – Microchart. Pozwala ona tworzyć proste wykresy dostosowane do możliwości urządzeń mobilnych.

Wskazówka 5: Obciążenie sieci, serwera oraz urządzenia mobilnego można dodatkowo zmniejszyć ustawiając większą wartość parametru „ScanRate”, odpowiadającego za częstość odświeżania danych. Parametr ten znajduje się w sekcji „Runtime” zakładki „Properties” (ważne jest, aby szukając tej opcji, nie mieć zaznaczonego żadnego obiektu z listy po lewej stronie ekranu). Podobna opcja znajduje się również w oknie konfiguracji funkcji Microchart i nosi nawę „SamplingRate”.

Wykonanie reszty czynności przy tworzeniu interfejsu dla piętra jest analogiczne do Kroku 4 (pamiętając o zastępowaniu nazwy piętra aliasem w ścieżkach dostępu do zmiennych).

Tworzenie interfejsu danego pokoju jest bardzo podobne do wyżej przedstawionych etapów. Największa różnica polega na konieczności używania dwóch aliasów na tym etapie. Kroki, które nieco różną się od przedstawionych wyżej, przedstawione są na poniższych filmach i zdjęciu.

 

Końcowy efekt dla interfejsów obsługujących piętra i pokoje przedstawiają zdjęcia:

 

Stworzenie 2 dodatkowych rodzajów ekranu kończy drugą część lekcji. Trzecia część będzie dotyczyć nadania im właściwych wzajemnych relacji oraz udostępnienia projektu w sieci.

 


Tworzenie mobilnej aplikacji SCADA CZ. 3

Dodawanie relacji pomiędzy interfejsami SCADA

Aby przemieszczanie się pomiędzy ekranami poszczególnych pięter i pokoi było możliwe, należy dla każdego przycisku funkcyjnego zawartego w projekcie, dodać odpowiednią akcję dynamiczną typu „Pick Action”. Każda z akcji dynamicznych ładuje odpowiedni interfejs oraz, jeśli zachodzi potrzeba, zmienia wartości odpowiednich aliasów. Konfigurowanie „Pick Action” przedstawiają poniższe filmy.

Udostępnianie mobilnych interfejsów SCADA

Kolejnym krokiem jest udostępnienie interfejsów w standardzie HTML5. Aby poprawnie przeprowadzić ten proces należy:

  1. Otworzyć projekt interfejsu dla budynku (stronę startową aplikacji) w programie GraphWorX.
  2. Wybrać opcję „Publish Mobile Display” z zakładki „MobileHMI Configuration”.
  3. W nowo otworzonym oknie wybrać opcję „Publish the currently loaded display” i wybrać „Next”.
  4. Pod pytaniem „Do you want to publish linked files?” zaznaczyć opcję „Yes” i przejść dalej („Next”).
  5. Sekcję „Publishing Options” można uzupełnić według własnych potrzeb. W omawianym przypadku może pozostać bez zmian.
  6. W kolejnym oknie program analizuje, które pliki należy udostępnić. Teraz można skontrolować, czy nie został pominięty żaden Display (powinny być 3).
  7. Po kliknięciu opcji „Next” należy wybrać lokalizację, w której pliki zostaną opublikowane. Aby ją zmodyfikować należy użyć opcji „modify”, a następnie wybrać odpowiedni protokół, nazwę hosta oraz wirtualny katalog. Domyślnie są to kolejno : „http”, nazwa komputera oraz PubDisplay (domyślny folder ICONICS dla publikacji).
  8. W kolejnej karcie należy wprowadzić nazwę użytkownika stworzonego podczas instalacji ICONICS oraz odpowiadające mu hasło. Po kliknięciu „Next” następuje proces publikacji.
  9. Jeśli wszystko przebiegło poprawnie, w oknie przy tytułach plików widnieją zielone napisy „OK”. Teraz można zamknąć kreator.

Konfiguracja serwera MobileHMI

Wyżej wspomniana konfiguracja odbywa się za pomocą narzędzia ‚MobileHMI’ dostępnego w programie Workbench. Aby poprawnie udostępnić stworzony projekt należy „rozwinąć” to narzędzie i zaznaczyć zakładkę „Layouts”. Następnie:

  1. Po kliknięciu PPM należy wybrać opcję „Add Layout”, wpisać pożądaną nazwę oraz zatwierdzić przyciskiem „Apply” znajdującym się u dołu ekranu.
  2. Po kliknięciu PPM na nowo utworzony layout należy wybrać opcję”Add Group”, wprowadzić nazwę grupy w polu „Name” oraz zatwierdzić jak wyżej.
  3. Po kliknięciu PPM na nowo utworzoną grupę należy wybrać „Add Tile”.
Ukazuje się menu konfiguracji narzędzia Tile – „kafelka”, który będzie pełnił funkcję ikony tworzonej aplikacji (po kliknięciu na „kafelek” będzie ukazywać się bazowa strona aplikacji”). Można konfigurować jego wygląd w analogiczny sposób jak w programie GraphWorX. Zmianie mogą podlegać m.in kolor tła, wyświetlana wartość, rozmiar, ikona. (Konfigurowany kafelek nie będzie widoczny, jeśli jest jednym w danej sekcji „Layout”.)  
Z punktu widzenia projektu istotna jest ostatnia zakładka „Command”. Tam określana jest akcja, która następuje po kliknięciu „Kafelka”. W polu „Command” należy wybrać „Load Graphic Display”, natomiast w polu „FileName” należy wprowadzić ścieżkę dostępu do opublikowanej wcześniej strony startowej aplikacji. Można do tego użyć wyszukiwarki znajdującej się z prawej strony pola.   

 

Na koniec konfiguracji warto wspomnieć, że nieużyta w tym przypadku sekcja „Configuration” narzędzia „MobileHMI” służy do wprowadzania: ikon oraz szablonów dla „kafelków”, ustawień OEM,  szablonów urządzeń wyświetlających projekty oraz elementów Augmented Reality takich jak odpowiednie kody paskowe lub QR powiązane z danymi projektami. Obiekty zapisane w sekcji „Configuration” mogą być używane przy późniejszym tworzeniu elementów w sekcji „Layouts”.

Po zapisaniu powyższych zmian, aplikacja jest już dostępna w sieci. W omawianym przypadku została opublikowana na serwerze lokalnym używanego komputera.

Wyświetlanie projektu na urządzeniu mobilnym

Należy pamiętać, że w przypadku gdy projekt udostępniany jest na serwerze lokalnym danego komputera, urządzenie mobilne musi być podłączone do tej samej sieci co PC.

Na dane urządzenie mobilne należy pobrać aplikację MobileHMI formy ICONICS. Jest ona dostępna za darmo w sklepach Windows-Store, Apple App Store i Google Play. Po zainstalowaniu i uruchomieniu aplikacji można dodawać nowe serwery oraz łączyć się z wybranymi z nich. W przypadku projektu udostępnianego na serwerze „localhost”, adres serwera to IP komputera, z którego pochodzi aplikacja w danej sieci. Działanie projektowanej aplikacji oraz obsługę MobileHMI na telefonie z systemem Android przedstawia poniższy film.

 

Aplikacja zaprojektowana w ramach tej lekcji pokazuje jedynie ideę narzędzia MobileHMI i nie przedstawia wszystkich dostępnych funkcji. W ogólności, projekty udostępniane w technologii HTML5 obsługują prawie wszystkie funkcje programu GraphWorX dla platform PC, np. wykresy kreślone przez TrendWorX Viewer, obsługę alarmów AlarmWorX Viewer i wiele innych. Sposób ich dodawania nie różni się jednak od tego dla komputerów stacjonarnych.

Elmark Automatyka udostępnia wersję demo oprogramowania GENESIS64 w celu osobistego przetestowania funkcjonalności pakietu. Skontaktuj się z nami na iconics@elmark.com.pl w celu otrzymania wersji testowej lub oferty handlowej.

 


 

Mobilna SCADA / HMI - zaawansowane funkcje 

Lekcja ta powstała, aby przybliżyć to, jak narzędzia ICONICS pozwalają przenieść stacjonarną aplikację SCADA z komputerów na ekrany urządzeń mobilnych. Co więcej, proces ten zachowuje wszystkie najważniejsze aspekty działania takiej aplikacji zapewniając, że użytkownik otrzymuje pełną wizualizację, gdziekolwiek się znajduje. Czytając dalej ten wpis zapoznasz się z przykładowymi etapami tworzenia aplikacji mobilnej, prezentującymi wybrane dodatkowe funkcje MobileHMI.

Mobilna aplikacja SCADA / HMI – przykład projektu

MobileHMI pozwala przenosić wszystkie najważniejsze funkcjonalności aplikacji SCADA na urządzenia mobile. Aby rozpocząć projektowanie ekranu, należy otworzyć program GraphWorX (środowisko tworzenia HMI od ICONICS) i ustawić odpowiednie parametry dla projektu. Ekrany mogą być zaprojektowane dla rozdzielczości wybranego urządzenia, lub jako uniwersalne.

 

Zarządzanie zasobami

Nawet ekrany mobilne zaprojektowane przy użyciu narzędzi od ICONICS obsługują drzewa zasobów tworzone w AssetWorX. Teraz użytkownik ma możliwość wygodnego nawigowania po rozproszonych zasobach również za pomocą zwykłego telefonu komórkowego.

Do elementów w drzewie zasobów można przypisać pewne akcje dynamiczne. Przykładem mogą być te, które ustawiają określone wartości dla kluczowych zmiennych, na podstawie których wyświetlane są informacje w aplikacji. Dzięki temu, raz zaprojektowane ekrany mogą posłużyć do prezentacji danych pochodzących z różnych urządzeń i procesów.

Dodając do tego kilka „kafelków”, prowadzących do bardziej szczegółowych ekranów HMI można otrzymać przejrzysty i responsywny ekran startowy aplikacji. Aby lepiej wyobrazić sobie powyższe treści, zamieszczono wideo obrazujące opisane działania.

 

Obsługa Alarmów

Alarmowanie o usterkach to jedna z kluczowych funkcji systemów SCADA. Co więcej, usterka jest czymś nieplanowanym, dlatego śledzenie stanu awarii w firmie powinno być możliwe zawsze i z każdego miejsca na ziemi.

Narzędzia od ICONICS pozwalają na przejrzystą prezentację informacji o usterkach na urządzeniach mobilnych w czasie rzeczywistym. Służy do tego komponent AlarmWorX Viewer. Pozwala on na konfigurację stylu wyświetlania alarmów oraz wielu filtrów powodujących, że prezentowane są tylko interesujące informacje z punktu widzenia użytkownika.

Na poniższym filmie pokazano dwie z czterech metod wyświetlania danych dostępnym w AWX Viewer: lista zwykła oraz przewijana. Mimo, że oferują nieco mniej opcji konfiguracyjnych od domyślnej tabeli alarmów w AWX Viewer, zachowują one najważniejsze jej funkcjonalności i lepiej sprawdzają się na urządzeniach mobilnych.

 

Zaawansowane wykresy

Przy projektowaniu ekranu startowego zostały wspomniane elementy SmartTile. Mimo, że pozwalają one na prezentację danych w postaci wykresów, użytkownik może dodać do mobilnego ekranu HMI również standardowy wykres. Służy do tego narzędzie TrendWorX Viewer.

TrendWorX Viewer sprawdza się dobrze przy aplikacjach mobilnych, gdyż potrafi wizualizować zmienne, których ścieżka adresowania jest dynamiczna. Dynamiczna, czyli zmieniana na bieżąco, na żądanie operatora. Dzięki temu jedna instancja kontrolki „TrendWorX Viewer” może obrazować przebiegi wielu zmiennych, w zależności od żądania operatora.

Prace wykańczające nad projektowanym ekranem SCADA HMI

Aby zakończyć projekt i sprawić, że wszystkie trzy ekrany będą się „widzieć” należy dodać do określonych obiektów pewne akcje dynamiczne.

W przypadku ekranu startowego, należy do obydwu obiektów typu „Smart Tile” przyporządkować akcję dynamiczną„Pick Action” wykonującą komendę „Load Display”. Dla każdego SmartTile należy wskazać odpowiedni ekran (alarmowania lub wykresów), który ma otworzyć się po uruchomieniu akcji dynamicznej.

Drugi krok to przyporządkowanie takiej samej akcji dynamicznej do obydwu przycisków z napisem „BACK” znajdujących się na ekranach alarmowania i wykresów. Tym razem jednak, jako ekran docelowy należy wskazać ten startowy, stworzony na początku wpisu.

Na sam koniec należy do przycisków „Variable 1” oraz „Variable 2” zlokalizowanych na ekranie wykresów przypisać akcje ustawiające odpowiednie wartości Globalnych Aliasów. Jeśli nie wiesz jak wykonać powyższe czynności, lub co to są Globalne Aliasy, powinieneś zapoznać się z 3 częściową lekcją wprowadzającą do MobileHMI. Odpowiednie sekcje znajudją się bezpośrednio nad tym artykułem.

 

Publikacja oraz testowanie aplikacji mobilnej

Aplikacja SCADA HMI zostanie udostępniona na lokalnym serwerze MobileHMI zainstalowanym na komputerze PC. Następnie, wykorzystując sieć lokalną, zaprojektowane ekrany zostaną przetestowane przy użyciu telefonu komórkowego.

Telefon posiada zainstalowaną kliencką wersję programu MobileHMI. Zamienia ona każde urządzenie mobilne w pełnoprawnego klienta SCADA. Można ją pobrać bezpłatnie z większości sklepów internetowych.

Niżej przedstawiono kroki prowadzące do publikacji projektu na serwerze lokalnym.

 

Poniżej natomiast przedstawiono zrzut ekranu z urządzenia mobilnego prezentujący działanie aplikacji w praktyce.

 

Elmark Automatyka udostępnia wersję demo oprogramowania GENESIS64 (którego częścią jest MobileHMI) w celu osobistego przetestowania funkcjonalności pakietu. Skontaktuj się z nami na ICONICS@elmark.com.pl w celu otrzymania wersji testowej lub oferty handlowej.

 


 

Rzeczywistość Rozszerzona - na przykładzie kodów QR w MobileHMI

Czym jest rzeczywistość rozszerzona?

Rzeczywistość rozszerzona (ang. Augmented Reality) to techniki łączące świat rzeczywisty z jego cyfrowym odzwierciedleniem, wytworzonym za pomocą urządzeń. Jest to naturalne następstwo wdrażania rozwiązań z takich dziedzin jak Internet of Things. Z powodu globalnego już dostępu do internetu, coraz więcej operacji takich, jak kontrola procesów przenosi się na urządzenia mobilne. Powoduje to znacznie łatwiejszy i wydajniejszy przepływ informacji.

Wprowadzanie zmian w aplikacjach kontrolujących procesy za pomocą komend głosowych, skanowania kodów QR, kreskowych, czy znaków alfanumerycznych – to tylko niektóre nowości wprowadzane przez rzeczywistość rozszerzoną.

Aby udostępnić tego rodzaju technologię swoim klientom, ICONICS wyposażył swój produkt – MobileHMI w obsługę odpowiednich funkcji. MobileHMI wykorzystuje elementy takie jak: QR, GPS, NFC (Near Field Communication), OCR (Optical Character Recognition) oraz kody kreskowe. Użytkownik może ingerować w przebieg procesu (np. zmieniać wartości zmiennych) zupełnie tak, jakby obsługiwał aplikację z poziomu komputera PC. W tym przypadku jednak dzieje się to za sprawą skanowania odpowiednich kodów lub nawet przebywania w określonej lokalizacji (funkcja GPS).

Rzeczywistość rozszerzona w aplikacji SCADA

Aby zaprezentować możliwości oferowane przez technologię rozszerzonej rzeczywistości, do projektu omawianego w poprzedniej lekcji dodano kilka funkcji. Wszystkie opierać będą się o QR-Kody.

Po pierwsze, skonfigurowano dwa kody QR pozwalające na otworzenie ekranu wykresów w posiadanej aplikacji, bezpośrednio z panelu głównego serwera MobileHMI. Oznacza to brak konieczności wyszukiwania aplikacji pośród „kafelków”, co jest przydatne w przypadku rozbudowanego serwera. Każdy z kodów QR ustawia dodatkowo odpowiednią wartość Aliasu Globalnego, symbolizującego lokalizację urządzeń, których parametry pracy są wizualizowane na wykresach.

Po drugie, dodano zestaw kodów QR pozwalających na tymczasowe tworzenie dodatkowych markerów na wykresie. Do tej pory, na jednym ekranie, możliwe było zobrazowanie jedynie zmiennych pochodzących z urządzeń z wybranej lokalizacji. Teraz będzie natomiast możliwość czasowego dodania zmiennej z innej lokalizacji, w celu porównania wskazań dwóch oddalonych od siebie urządzeń. Wszystko za pomocą kodów QR.

Jak działają funkcje Augmented Reality w MobileHMI?

MobileHMI istnieje zawsze w dwóch wersjach:

  • instalowanej na komputerze (serwerze) wraz z pakietem SCADA,
  • pobieranej na urządzenia mobilne i działającej jako aplikacja kliencka.

Kiedy urządzenie mobilne łączy się z docelowym serwerem MobileHMI za pomocą aplikacji klienckiej jest w stanie przesyłać do serwera żądania. Dzieje się to za pomocą kliknięć lub np. skanowania różnego rodzaju kodów. Aplikacja kliencka MobileHMI przetwarza (za pomocą wbudowanego skanera kodu QR) komendę, w postaci graficznego znaku, na żądanie zrozumiałe dla serwera. Po przesłaniu go do serwera, ten wykonuje odpowiednią operację, a jej wynik jest widoczny na ekranie urządzenia mobilnego

Dostęp do ekranu wykresów

Ekran wykresów w posiadanej aplikacji SCADA prezentuje się w poniższy sposób.

Wyróżniono na nim obszar (oznaczony numerem 1). Wskazuje on na wartość Aliasu Globalnego o nazwie „Area”, przygotowanego wcześniej. Przyjmuje on dwie wartości („West” i „East”) i zależą od niego ścieżki adresowe zmiennych prezentowanych na wykresach. W zależności od jego wartości, operator będzie w stanie wyświetlić zmienne: „Variable 1” oraz „Variable 2” pochodzące z urządzeń w lokalizacji „West” lub „East”.

Aby skonfigurować odpowiednią komendę wyświetlającą ten ekran, należy na serwerze otworzyć środowisko Workbench oraz przejść do lokalizacji MoblieHMI->Configuration->AugmentedReality. Wybierając ostatni element za pomocą PPM, należy użyć opcji „Add Location”.

Użytkownik uzupełnia takie informacje jak:

  • „Type” – rodzaj kodu, tu: QR;
  • „Value” – wartość zamieniona na kod QR; w przypadku kodów QR nie ma tu szczególnych obostrzeń, jednak nie powinna być ona zbyt długa;
  • „Command” – typ żądania, tu: „Load Graphic Display” – otworzenie nowego ekranu;
  • „File name” – tu należy wyszukać, pośród opublikowanych plików, docelowy ekran;
  • „Global Aliases” – za pomocą kreatora należy wybrać określone aliasy, a następnie przypisać im żądaną wartość;
  • „Target Type” – określa w jakim oknie zostanie otworzony ekran; tu: „Current Window” – w obecnym.

Powyższy film przedstawia konfigurację kodu QR wyzwalającego komendę ładowania ekranu wykresów, wraz z ustawieniem wartości aliasu globalnego „Area” na „West”. Drugą komendę (dla wartości „East” tego aliasu) dodaje się analogicznie.

Dodanie markera do wykresu za pomocą kodu QR

Jak zostało wspomniane wyżej, ekran wykresów w takiej formie pozwala na wyświetlanie zmiennych z jednego obszaru. Co więcej, ustawiono go tak, że operator może wizualizować przebieg jednej zmiennej na raz.

Aby móc dodać do wykresu (tymczasowo) dowolny marker (np. dla porównania wskazań urządzeń z dwóch różnych obszarów) można posłużyć się kodami QR z odpowiednio skonfigurowaną komendą.

Na potrzeby projektu dodano 4 kody QR. Każdy z nich tworzy marker obrazujący przebieg jednej z 4 przygotowanych zmiennych.

W celu utworzenia tychże komend należy przejść do tej samej lokacji w Workbench, co wcześniej. Różnice w konfiguracji pojawiają się od momentu wyboru typu komendy realizowanej przez kod QR. Teraz będzie to „Create Pen”.

Następnie ukaże się wiele opcji możliwych do dostosowania. Na potrzeby konfiguracji zmieniono tylko kilka najważniejszych. Są to:

  • „Point Name” – ścieżka do docelowej zmiennej;
  • „Parameters” – parametry połączenia ze zmienną; tu: HDA (Historical Data Access) Connection, gdyż zmienne te pochodzą z modułu Hyper Historian;
  • ustawienia odnoszące się do grubości oraz koloru dodawanego markera;
  • „Target” – nazwa obiektu odpowiedzialnego za wykonanie komendy; tu jest to instancja TrendWorX Viewer’a obecna na ekranie;
  • „Pen Name” – unikalna nazwa markera.

Przed przystąpieniem do konfiguracji kodu QR należy jeszcze tylko nadać dowolną nazwę dla instancji TrendWorX Viewer’a, posiadanej na ekranie SCADA. Dokonuje się tego w GraphWorX przy otworzonym projekcie ekranu (w lokacji, jak na zdjęciu poniżej). Następnie należy opublikować ponownie ten ekran, w takiej samej lokalizacji, jak za pierwszym razem.

Dodanie nazwy dla TWX Viewer na potrzeby wykonywania komend

Powyżejzamieszczono wideo obrazujące to, jak przebiega konfiguracja przykładowego kodu QR tworzącego marker. Pozostałe 3 kody QR dodaje się analogicznie - zmienia się jedynie ścieżka dostępu do zmiennej oraz (opcjonalnie) kolory markerów, w celu ich rozróżnienia.

Prezentacja możliwości Augmented Reality w aplikacji SCADA

Aby przetestować to, jak działa rzeczywistość rozszerzona w odniesieniu do zaprojektowanej aplikacji SCADA należy połączyć się urządzeniem mobilnym z siecią, w której działa serwer, a następnie uruchomić kliencką wersję MobileHMI. Następnie, po połączeniu się z serwerem, użytkownik ma możliwość otworzenia skanera kodów QR, zarówno będąc na stronie startowej serwera MobileHMI, jak i po otworzeniu którejś z aplikacji. Podręczne menu widoczne na wideo otwiera się poprzez dłuższe przyciśnięcie dowolnego punktu ekranu. 

Najpierw użyjemy dowolny kod QR otwierający ekran wykresów w aplikacji, a następnie dodamy wszystkie pozostałe markery do obecnego tam wykresu. Oczywiście każde działanie odbędzie się przy wykorzystaniu kodów QR.

Powyższy film przedstawił tylko przykład tego, jak rozszerzona rzeczywistość może zostać wykorzystana w systemie SCADA. Można sobie wyobrazić, że wyświetlanie informacji o urządzeniach za pomocą QR kodów zlokalizowanych przy nich jest bardzo pomocne. Dzieje się tak szczególnie wtedy, gdy liczba zasobów do zwizualizowania jest duża i nie ma możliwości dodania do ekranu aplikacji aż tylu przycisków dostosowujących dane.

ICONICS wychodzi naprzeciw wymaganiom Augmented Reality również poprzez dostosowywanie narzędzia MobileHMI do pracy z nowatorskimi komputerami nasobnymi jak RealWear, czy Hololens. Dzięki tym wysiłkom, integracja cyfrowego świata kontroli procesów z tym rzeczywistym jest coraz łatwiejsza.

Elmark Automatyka udostępnia wersję demo oprogramowania GENESIS64 (którego częścią jest MobileHMI) w celu osobistego przetestowania funkcjonalności pakietu. Skontaktuj się z nami na iconics@elmark.com.pl w celu otrzymania wersji testowej lub oferty handlowej. Pomożemy Ci również w stworzeniu koncepcji aplikacji mobilnej dla Twojego procesu, według Twojego pomysłu.

Komentarze