Automatyka w praktyce

Wizualizacja webowa i zdalny dostęp do sterowników PLC – WebVisu i VNC w Astraada One / A-Series

Kontakt w sprawie artykułu: Wojciech Talik - 2026-11-10

Sterownik PLC realizuje logikę sterowania, ale sam z siebie nie prezentuje operatorowi informacji o procesie. Do tego służy wizualizacja, czyli graficzny interfejs pokazujący stany urządzeń, wartości pomiarów i alarmy, a także pozwala na zadawanie parametrów.

Tradycyjnie rolę tę pełnił dedykowany panel operatorski HMI. Sterowniki Astraada oferują jednak dwa dodatkowe mechanizmy, które pozwalają wyświetlić wizualizację na zwykłym komputerze: WebVisu oraz VNC. Niniejszy artykuł opisuje oba rozwiązania, wyjaśnia różnice między nimi i pokazuje praktyczne uruchomienie wizualizacji na komputerze przemysłowym w trybie kiosk.

Opisane rozwiązania przetestowano na sterowniku Astraada A-Series oraz Astraada One.

WebVisu – wizualizacja webowa

Czym jest WebVisu

WebVisu to mechanizm udostępniania wizualizacji sterownika za pośrednictwem wbudowanego serwera WWW. Sterownik hostuje stronę internetową opartą o standard HTML5, którą można otworzyć w dowolnej przeglądarce na komputerze, tablecie czy nawet telefonie, bez instalowania jakiegokolwiek dodatkowego oprogramowania.

W sterownikach Astraada ONE oraz Astraada A-Series serwer WWW jest elementem standardowego wyposażenia i nie wymaga kupowania osobnych licencji. Wizualizację tworzy się w środowisku programistycznym (CODESYS lub Astraada A2000 Studio) jako obiekt Visualization, a następnie udostępnia poprzez dodanie obiektu WebVisu.

Zasada działania

Podczas kompilacji projektu środowisko programistyczne zamienia zaprojektowany ekran na stronę HTML5 wraz z kodem JavaScript i umieszcza ją w pamięci sterownika razem z programem sterującym.

Po wpisaniu adresu sterownika w przeglądarce następuje pobranie tej strony. Następnie skrypt działający po stronie przeglądarki cyklicznie odpytuje sterownik o aktualne wartości zmiennych, a sterownik odsyła wyłącznie dane liczbowe. Na ich podstawie przeglądarka samodzielnie aktualizuje obraz. Interakcja działa analogicznie w drugą stronę: naciśnięcie przycisku powoduje wysłanie informacji do sterownika i zmianę wartości zmiennej w programie.

Przewaga nad tradycyjnym panelem HMI

Największą przewagą wizualizacji webowej nad tradycyjnym panelem operatorskim jest otwartość środowiska, w którym się ją uruchamia. Wizualizację wyświetla komputer przemysłowy pracujący pod kontrolą systemu Windows lub Linux, przez co stanowisko operatorskie przestaje być zamkniętym urządzeniem jednego producenta, a na tym samym komputerze mogą równolegle działać inne aplikacje, takie jak system SCADA, oprogramowanie raportujące, baza danych czy narzędzia zdalnego dostępu. Z tego samego powodu znika ograniczenie wielkości ekranu: klasyczne panele HMI dostępne są w wąskim zakresie przekątnych, a ich cena rośnie wraz z rozmiarem, natomiast do komputera przemysłowego można podłączyć dowolny monitor, również duży wyświetlacz poglądowy zamontowany na hali produkcyjnej.

Istotną zaletą jest również możliwość jednoczesnej pracy wielu użytkowników. Z tej samej wizualizacji może w tym samym czasie korzystać kilka osób na różnych urządzeniach, podczas gdy panel HMI zamontowany jest w jednym miejscu i widzi go wyłącznie operator stojący przy maszynie. Rozwiązanie nie wymaga przy tym ponoszenia dodatkowych kosztów licencyjnych, ponieważ serwer WWW stanowi standardowe wyposażenie sterownika, a po stronie klienta wystarczy zwykła przeglądarka internetowa. Ponieważ przez sieć przesyłane są wyłącznie wartości zmiennych, a nie gotowy obraz, obciążenie łącza pozostaje niewielkie i wizualizacja działa poprawnie także przy ograniczonej przepustowości sieci.

Ograniczenia WebVisu

WebVisu wymaga, aby sterownik obsługiwał funkcję wizualizacji. Rozwiązanie nie odwzorowuje również ekranu fizycznego panelu podłączonego do sterownika, w tym celu należy zastosować VNC.

VNC – czyli zdalny podgląd ekranu

Czym jest VNC

VNC (Virtual Network Computing) to protokół zdalnego dostępu do pulpitu, który pozwala oglądać i obsługiwać ekran jednego urządzenia z poziomu drugiego. W kontekście automatyki może to oznaczać możliwość zobaczenia na komputerze tego samego obrazu, który wyświetla się na panelu operatorskim podłączonym do sterownika, oraz obsługiwania go tak, jakbyśmy stali przy maszynie.

W sterownikach Astraada ONE (bez wbudowanego panelu operatorskiego) funkcję tę realizuje serwer VNC wbudowany w środowisko uruchomieniowe. Nie wymaga on instalowania dodatkowego oprogramowania na sterowniku, a jedynie włączenia odpowiedniej opcji w konfiguracji. Po stronie komputera potrzebna jest natomiast prosta aplikacja typu TightVNC Viewer, UltraVNC lub RealVNC Viewer.

Zasada działania

VNC opiera się na protokole RFB (Remote Frame Buffer). Sterownik wysyła obraz przez sieć do komputera, a wszystkie kliknięcia myszą i naciśnięcia klawiszy wracają do sterownika, gdzie są przetwarzane tak samo, jak byłoby przetwarzane dotknięcie ekranu dotykowego panelu.

Aby ograniczyć obciążenie sieci, przesyłane są wyłącznie te obszary obrazu, które uległy zmianie. Jeżeli na wizualizacji zmienia się pojedyncza wartość liczbowa, w sieć idzie tylko niewielki fragment odpowiadający temu polu. Większy transfer występuje dopiero przy zmianie całego ekranu, na przykład podczas przełączenia na inny widok. Komunikacja odbywa się domyślnie na porcie 5900, a dostęp zabezpiecza się hasłem definiowanym po stronie sterownika.

Kluczową cechą tego rozwiązania jest to, że przez sieć przesyłany jest gotowy obraz, a nie dane. Renderowanie odbywa się w całości po stronie sterownika i to właśnie odróżnia VNC od WebVisu.

Kiedy stosować VNC

Podstawowym zastosowaniem VNC jest wierne odwzorowanie ekranu fizycznego panelu. Przykładowo jeśli łączymy się do panelu Astraada HMI zdalny użytkownik widzi dokładnie to samo, co operator stojący przy maszynie, łącznie z komunikatami systemowymi, oknami dialogowymi i ekranem startowym urządzenia. Tego rodzaju informacji WebVisu nie pokaże, ponieważ udostępnia wyłącznie zaprojektowaną wizualizację, a nie pulpit sterownika.

Z tej samej właściwości wynika drugie zastosowanie, czyli wsparcie serwisowe. VNC udostępnia jedną wspólną sesję, więc serwisant i operator pracują na tym samym widoku. Przełączenie ekranu przez jedną osobę widoczne jest natychmiast dla drugiej, co pozwala przeprowadzić operatora przez kolejne kroki bez opisywania mu, gdzie ma kliknąć. Rozwiązanie sprawdza się również w diagnostyce, gdy trzeba zweryfikować stan samego urządzenia, na przykład sprawdzić, czy wizualizacja lokalna uruchomiła się poprawnie po restarcie sterownika.

Ograniczenia VNC

Warunkiem działania VNC jest uruchomienie na sterowniku wizualizacji lokalnej, czyli obiektu TargetVisu. Serwer VNC nie generuje obrazu samodzielnie, a jedynie przechwytuje to, co byłoby wyświetlane na sterowniku. Jeżeli w projekcie dodano wyłącznie obiekt WebVisu, nie ma czego przesyłać i połączenie nie pokaże wizualizacji.

Ograniczeniem jest również brak możliwości współdzielenia jednej sesji, niemożliwa jest równoległa praca kilku osób na różnych widokach, co bez trudu realizuje WebVisu.

W praktyce obie technologie nie konkurują ze sobą, lecz się uzupełniają. WebVisu stosuje się do codziennej pracy z wizualizacją i dostępu dla wielu użytkowników, natomiast VNC do serwisu, diagnostyki i wszędzie tam, gdzie potrzebny jest podgląd rzeczywistego ekranu sterownika.

Uruchomienie wizualizacji webowej w trybie kiosk Linux/Windows w Astraada A-series (Ubuntu)

Poniższy opis przedstawia kolejne kroki niezbędne do udostępnienia wizualizacji przez przeglądarkę internetową. Przykład wykonano na sterowniku Astraada A2000, procedura w sterownikach Astraada ONE przebiega analogicznie.

Przygotowanie projektu

Pracę rozpoczyna się od utworzenia nowego projektu i wskazania właściwego sterownika z listy urządzeń. Następnie w gałęzi Application tworzy się obiekt Visualization – środowisko zaproponuje przy tym dodanie obiektu Visualization Manager, niezbędnego do późniejszego udostępnienia ekranu przez sterownik.

Ekran projektuje się w edytorze graficznym, przeciągając na obszar roboczy elementy z palety: przyciski, lampki, pola wartości czy figury podstawowe. Każdy z nich powiązuje się ze zmienną programu sterującego, wskazując ją w polu Variable we właściwościach elementu. Elementy sterujące zapisują wartość zmiennej, natomiast sygnalizacyjne jedynie ją odczytują i prezentują graficznie. To właśnie te powiązania sprawiają, że statyczny rysunek staje się wizualizacją reagującą na stan procesu.

Konfiguracja połączenia sieciowego

Komunikacja ze sterownikiem odbywa się poprzez port Ethernet. Należy zwrócić uwagę, aby nie wykorzystywać do tego celu portu EtherCAT, który służy wyłącznie do komunikacji z modułami rozszerzeń i napędami, co bywa źródłem pomyłek. Sterownik posiada fabrycznie ustawiony adres IP, dlatego karcie sieciowej komputera należy nadać adres statyczny z tej samej podsieci. Poprawność połączenia najprościej zweryfikować poleceniem ping.

Dodanie obiektu WebVisu

Aby wizualizacja została udostępniona przez serwer, do obiektu Visualization Manager należy dodać obiekt WebVisu. W jego ustawieniach wskazuje się ekran startowy w polu Start visualization oraz nazwę pliku startowego, domyślnie webvisu. Bez tego kroku wizualizacja zostanie wgrana do sterownika, lecz nie będzie dostępna z zewnątrz.

Kompilacja i wgranie programu

Projekt należy skompilować i sprawdzić, czy nie zgłoszono błędów, a następnie zalogować się do sterownika i wgrać aplikację. Jeżeli w sterowniku znajduje się już inny program, środowisko poprosi o potwierdzenie jego zastąpienia. Po wgraniu należy uruchomić program poleceniem Start, ponieważ przy zatrzymanym programie wizualizacja pozostanie nieaktywna.

Istotnym krokiem, który łatwo pominąć, jest wykonanie polecenia Create Boot Application (jeśli jest to potrzebne i nie wgrano aplikacji uruchamianej automatycznie). Zapisuje ono aplikację w pamięci trwałej sterownika, dzięki czemu program uruchomi się po każdym włączeniu zasilania. Bez tego kroku po zaniku zasilania sterownik pozostanie pusty, a wizualizacja przestanie być dostępna.

Otwarcie wizualizacji w przeglądarce

Wizualizację otwiera się, wpisując w przeglądarce adres złożony z adresu IP sterownika, numeru portu serwera wizualizacji oraz nazwy pliku startowego, na przykład:

http://192.168.1.10:8080/webvisu.htm

Jeżeli sterownik pracuje w trybie RUN, w oknie przeglądarki pojawia się zaprojektowany ekran. Od tego momentu wizualizacja zachowuje się jak zwykła strona internetowa i można ją otworzyć jednocześnie na kilku urządzeniach.

Wizualizacja sterownika Astraada A-series udostępniona przez WebVisu, otwarta w przeglądarce

Uruchomienie wizualizacji webowej w trybie kiosk Linux/Windows w Astraada ONE (Ubuntu)

Poniższy opis przedstawia udostępnienie wizualizacji przez przeglądarkę na sterowniku Astraada ONE (Berghof MX6- Control) w środowisku CODESYS 3.5. Sama procedura tworzenia wizualizacji przebiega analogicznie do opisanej w poprzedniej części, dlatego poniżej wskazano wyłącznie różnice wynikające ze specyfiki platformy.

Przygotowanie projektu

Pracę rozpoczyna się od utworzenia nowego projektu i wskazania sterownika z listy urządzeń – w przypadku Astraada ONE należy wybrać właściwy wariant Berghof MX6 – Control. Dalsze kroki, czyli utworzenie obiektu Visualization, zaprojektowanie ekranu i powiązanie elementów ze zmiennymi programu, wykonuje się identycznie jak opisano powyżej.

Konfiguracja połączenia sieciowego

Astraada ONE posiada dwa porty Ethernet. Do komunikacji z komputerem inżynierskim i do udostępnienia wizualizacji wykorzystuje się jeden z nich.

Komputerowi nadaje się adres statyczny z tej samej podsieci co sterownik, po czym połączenie weryfikuje się poleceniem ping. Warto zapisać, który z portów fizycznych został użyty, ponieważ przy późniejszej konfiguracji panelu operatorskiego kabel podłącza się do tego samego gniazda.

Dodanie obiektu WebVisu

Do obiektu Visualization Manager należy dodać obiekt WebVisu i wskazać ekran startowy w polu Start visualization oraz nazwę pliku startowego, domyślnie webvisu. Bez tego kroku aplikacja zostanie wgrana, lecz wizualizacja nie będzie dostępna z zewnątrz.

W ustawieniach WebVisu warto zwrócić uwagę na sposób skalowania ekranu. Opcja dopasowania do rozmiaru okna sprawdza się przy panelach o różnych rozdzielczościach. Dla stanowiska operatorskiego opartego na panelu o znanej rozdzielczości wybieramy Isotropic, ponieważ wizualizacja wypełnia ekran bez deformacji elementów graficznych.

Kompilacja i wgranie programu

Projekt należy skompilować, upewnić się, że nie ma błędów, zalogować się do sterownika i wgrać aplikację. Po wgraniu program uruchamia się poleceniem Start, przy zatrzymanej aplikacji wizualizacja pozostaje nieaktywna, mimo że serwer wizualizacji odpowiada. Może to być mylące przy diagnostyce: adres jest osiągalny, a mimo to okno przeglądarki pozostaje puste.

Następnie należy wykonać polecenie Create Boot Application (jeśli jest to potrzebne i nie wgrano aplikacji uruchamianej automatycznie). Zapisuje ono aplikację w pamięci trwałej, dzięki czemu program wraca do trybu RUN po każdym włączeniu zasilania. Bez tego kroku sterownik po zaniku zasilania pozostaje bez aplikacji, a wizualizacja przestaje być dostępna.

Otwarcie wizualizacji w przeglądarce

Wizualizację otwiera się, wpisując adres złożony z adresu IP sterownika, numeru portu serwera WWW oraz nazwy pliku startowego, na przykład:

http://192.168.1.201:8080/webvisu.htm

Jeżeli sterownik pracuje w trybie RUN, w oknie przeglądarki pojawia się zaprojektowany ekran.

Liczba jednocześnie podłączonych klientów WebVisu bywa ograniczona licencją, dlatego przy równoczesnym podglądzie na panelu operatorskim i komputerze inżynierskim może pojawić się komunikat o przekroczeniu limitu.

Konfigurację panelu operatorskiego, uruchamiającego powyższą wizualizację automatycznie w trybie kiosk, opisano w osobnej instrukcji.

Wizualizacja sterownika Astraada ONE udostępniona przez WebVisu i otwarta w przeglądarce

Uruchomienie wizualizacji ze sterownika po VNC

Poniższy opis przedstawia udostępnienie wizualizacji przez protokół VNC na sterowniku Astraada ONE w środowisku CODESYS 3.5. W odróżnieniu od rozwiązania opisanego powyżej, przez sieć przesyłany jest gotowy obraz ekranu sterownika, a nie wartości zmiennych, dlatego konfiguracja obejmuje zarówno projekt aplikacji, jak i ustawienia samego urządzenia.

Przygotowanie projektu

Pracę rozpoczyna się identycznie jak w przypadku opisanej wyżej konfiguracji WebVisu, czyli od utworzenia projektu, wskazania właściwego wariantu sterownika oraz zaprojektowania ekranu w obiekcie Visualization. Zasadnicza różnica pojawia się przy udostępnianiu wizualizacji. O ile w rozwiązaniu webowym do obiektu Visualization Manager dodaje się obiekt WebVisu, o tyle przy VNC niezbędny jest obiekt TargetVisu, odpowiadający za wizualizację lokalną, wyświetlaną bezpośrednio na sterowniku.

Rozróżnienie to ma znaczenie praktyczne, ponieważ serwer VNC nie generuje obrazu samodzielnie, a jedynie przechwytuje i przesyła to, co byłoby wyświetlane na sterowniku. Jeżeli w projekcie znajduje się wyłącznie obiekt WebVisu, połączenie VNC dojdzie do skutku, lecz zamiast wizualizacji pojawi się czarny ekran. Jest to sytuacja szczególnie myląca w diagnostyce, ponieważ wszystko wskazuje na poprawną konfigurację sieci. Oba obiekty mogą przy tym istnieć w projekcie równolegle.

Kompilacja i wgranie programu

Projekt należy skompilować, sprawdzić brak błędów, zalogować się do sterownika i wgrać aplikację, a następnie uruchomić ją poleceniem Start. Podobnie jak wcześniej, należy wykonać polecenie Create Boot Application. Zapisuje ono aplikację w pamięci trwałej, dzięki czemu wizualizacja wraca do pracy po każdym włączeniu zasilania.

Włączenie serwera VNC w sterowniku

Konfigurację serwera wykonuje się poza środowiskiem programistycznym, w interfejsie webowym sterownika. Wystarczy w przeglądarce na komputerze inżynierskim wpisać sam adres IP sterownika, bez numeru portu i bez nazwy pliku, na przykład:

http://192.168.1.201

Warto zwrócić uwagę na różnicę względem wizualizacji webowej, gdzie adres zawierał dodatkowo port serwera WWW oraz nazwę pliku startowego. Tutaj otwiera się panel konfiguracyjny samego urządzenia, a nie zaprojektowana wizualizacja.

Po zalogowaniu wyświetla się strona z nazwą i wersją sterownika oraz menu podzielone na sekcje. W sekcji Configuration znajduje się pozycja VNC server, w której włącza się serwer, ustawia hasło dostępu oraz decyduje, czy zdalny użytkownik może wyłącznie obserwować wizualizację, czy również ją obsługiwać.

Ustawienie hasła jest zdecydowanie zalecane, ponieważ bez niego dostęp do panelu maszyny uzyskuje każdy użytkownik znajdujący się w tej samej sieci. Po zapisaniu ustawień warto zweryfikować, czy hasło rzeczywiście obowiązuje: przy nawiązywaniu połączenia powinno pojawić się pytanie o nie. Jeżeli połączenie zestawia się od razu, hasło nie zostało zastosowane i konfigurację należy powtórzyć lub zrestartować serwer. Serwer VNC nasłuchuje domyślnie na porcie 5900.

Ustawienia serwera VNC w interfejsie webowym sterownika: włączony serwer, rozdzielczość, głębia kolorów oraz sekcja Authentication z hasłem połączenia

Połączenie ze sterownikiem

W odróżnieniu od WebVisu, do wyświetlenia wizualizacji nie wystarczy przeglądarka internetowa. Protokół VNC wymaga osobnej aplikacji klienckiej, na przykład Remminy w systemach Linux lub TightVNC. W polu adresu podaje się adres IP sterownika, opcjonalnie wraz z numerem portu.

Jeżeli sterownik pracuje w trybie RUN, w oknie programu pojawia się obraz

Konfigurację panelu operatorskiego, uruchamiającego powyższą wizualizację automatycznie w trybie kiosk, opisano w osobnej instrukcji.

Wizualizacja sterownika Astraada ONE wyświetlona na panelu operatorskim przez połączenie VNC w trybie kiosk

6. Podsumowanie

Wizualizacja procesu nie musi już oznaczać zakupu dedykowanego panelu operatorskiego. Nowoczesne sterowniki Astraada udostępniają ją na dwa sposoby, a wybór między nimi sprowadza się do jednego rozstrzygnięcia: co ma być przesyłane przez sieć.

WebVisu przesyła dane. Sterownik odsyła wartości zmiennych, a obraz powstaje dopiero w przeglądarce użytkownika. Dzięki temu obciążenie sieci pozostaje niewielkie, wielu użytkowników może pracować jednocześnie na niezależnych widokach, a do uruchomienia wystarczy dowolne urządzenie z przeglądarką. To rozwiązanie do codziennej pracy z wizualizacją.

VNC przesyła obraz. Sterownik wysyła zawartość swojego ekranu, więc zdalny użytkownik widzi dokładnie to samo, co widziałby operator stojący przy maszynie, łącznie z komunikatami systemowymi i ekranem startowym urządzenia. Kosztem jest większy ruch sieciowy, jedna wspólna sesja dla wszystkich oraz konieczność zainstalowania osobnej aplikacji. To rozwiązanie do serwisu i diagnostyki.

Obie technologie można wykorzystać równolegle w tym samym projekcie i w praktyce dobrze się uzupełniają. Warto przy tym pamiętać o dwóch krokach, których pominięcie najczęściej prowadzi do trudnych w diagnostyce sytuacji, gdy wszystko wygląda na poprawnie skonfigurowane, a ekran pozostaje pusty. Pierwszym jest wykonanie polecenia Create Boot Application, bez którego sterownik po zaniku zasilania pozostaje bez aplikacji. Drugim jest dodanie obiektu TargetVisu, bez którego serwer VNC nie ma czego przesyłać.

Uzupełnieniem obu rozwiązań jest tryb kiosk na komputerze przemysłowym, dzięki któremu stanowisko operatorskie po włączeniu zasilania samo wyświetla wizualizację na pełnym ekranie, bez udziału użytkownika. Efektem jest urządzenie, które z perspektywy operatora zachowuje się jak klasyczny panel HMI, zachowując przy tym otwartość i możliwości zwykłego komputera.

Autor artykułu:

Bartosz Leśniak

Praktykant ASTOR

Student kierunku Automatyka i robotyka na Akademii Górniczo-Hutniczej w Krakowie

Współpraca i wsparcie merytoryczne: Wojciech Talik

Newsletter Poradnika Automatyka

Czytaj trendy i inspiracje, podstawy automatyki, automatykę w praktyce

Please wait...

Dziękujemy za zapis do newslettera!

Czy ten artykuł był dla Ciebie przydatny?

Średnia ocena artykułu: 0 / 5. Ilość ocen: 0

Ten artykuł nie był jeszcze oceniony.

Zadaj pytanie

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *