Komunikacja oprogramowania SCADA ze sterownikiem PLC

Wiktor Susfał Łączność i Zarządzanie

Wpis ten przedstawia sposób komunikacji oprogramowania GENESIS64 ze sterownikiem PLC wykorzystujący serwer OPC UA.

Opis nawiązywania połączenia pomiędzy wyżej wymienionymi komponentami zostanie omówiony na przykładzie aplikacji, w której sterownik PLC zapala i gasi diodę LED z częstotliwością zmienianą z poziomu oprogramowania SCADA.

Sterownik PLC

Wykorzystany na potrzeby projektu sterownik produkowany jest przez firmę BEDROCK. Posiada on między innymi uniwersalny moduł wyjść konfigurowanych jako analogowe lub cyfrowe. Z jednym z omawianych wyjść, ustawionym w tryb pracy cyfrowej, została połączona dioda.

Programowanie sterownika odbywa się za pomocą dedykowanego środowiska BEDROCK IDE. Łącząc sterownik z komputerem za pomocą kabla Ethernet, możliwe jest przenoszenie programu z PC do pamięci kontrolera BEDROCK.

Ustanowienie komunikacji z PLC

Posiadając odpowiednio skonfigurowany serwer OPC UA udostępniający zmienne należące do programu kontrolera należy upewnić się, jak brzmi jego identyfikator URI. Jest to łańcuch znaków umożliwiający identyfikację zasobów w sieci. Może określać on nazwę zasobu – wtedy definiowany jest jako URN, lub jego adres – URL.

W przypadku sterownika BEDROCK jest to adres dostępu URL do jego serwera OPC UA i składa się on z IP nadanego kontrolerowi w obrębie połączenia lokalnego z komputerem oraz odpowiedniego portu (dla kontrolerów BEDROCK domyślny port to 4840).

Przykład identyfikatora URI wykorzystywanego w projekcie: opc.tcp://192.168.100.100:4840.

Aby uzyskać dostęp do danych tego serwera z poziomu oprogramowania GENESIS64, należy w module Workbench dodać połączenie symbolizujące go. Dokonuje się tego przechodząc kolejno do zakładek PlatformServices -> FrameWorX -> NetworkSettings -> OPC UA Network. W ostatniej lokalizacji należy nazwać konfigurowane połączenie i wprowadzić odpowiedni identyfikator URI, aby uzyskać efekt podobny jak na zdjęciu poniżej.

Zdj. 1 Połączenie z serwerem OPC UA

Po wprowadzeniu odpowiednich ustawień powinno być możliwe wyszukanie zmiennych należących do serwera OPC w panelu „Data Browser”, po prawej stronie okna Workbench.

Na potrzeby projektu dodano do serwera jedną zmienną wykorzystywaną w programie sterownika. Symbolizuje ona okres czasu mierzony w milisekundach, w którym dioda pozostaje kolejno w stanie zapalonym i zgaszonym.

Konfiguracja interfejsu SCADA

Zmiana nastawy sterownika odbywać się będzie z poziomu graficznego interfejsu stworzonego w module wizualizacji pakietu GENESIS64 jakim jest GraphWorX. Interfejs składa się z „suwaka” będącego standardowym modelem 2D wchodzącym w skład bibliotek modeli GraphWorX oraz z pola wyświetlającego aktualną wartość nastawy.

Do „suwaka” przypisano odpowiednią zmienną znalezioną za pomocą wyszukiwarki danych ”Data Browser”.  Wyszukiwarka ta wygląda identycznie dla modułów Workbench i GraphWorX. Wspomniana zmienna znajduje się pod elementem BedrockConnection (por. zdj. 1). Zakres zmian nastawy przyjęto od 100 do 5000 ms.

Prezentacja rezultatów

Po wykonaniu powyższych czynności, układ zachowuje się w sposób pokazany na poniższym filmie.

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.