Komunikacja PLC i VisiLogic za pomocą Ethernet

Wiktor Susfał Akademia Unitronics Tagi: , , ,
Komunikacja Ethernet PLC z Visilogic - główne

Dodatkowy wpis omawiający sposób, w jaki ustanawiana jest komunikacja Ethernet pomiędzy sterownikiem PLC i VisiLogic.

Wszystkie sterowniki Vision oraz Samba (za wyjątkiem modelu v120) posiadają możliwość rozszerzenia swojej komunikacji o port Ethernet. Co więcej, sterowniki Vision serii v7xx są fabrycznie wyposażane w to gniazdo.

Oczywiście, jeśli chodzi o wgrywanie programu na sterownik lub aktualizację OS, połączenie szeregowe w zupełności wystarcza. Niemniej jednak, z powodu dużej powszechności modelu TCP/IP w komunikacji, opisano tu również tę metodę.

Jeśli nie posiadasz, lub nie potrzebujesz możliwości skomunikowania PLC z VisiLogic przewodem Ethernet, możesz pominąć tą lekcję.

Zawartość lekcji

Podczas lektury tego wpisu omówiono kroki, jakie należy podjąć w celu nawiązania komunikacji Ethernet z VisiLogic. Aby wykonać przedstawione tu etapy, należy posiadać ustanowioną już komunikację szeregową pomiędzy sterownikiem i środowiskiem programowania. Opisano ją w poprzedniej lekcji.

Całość będzie polegać na odpowiedniej inicjacji, zamontowanej z tyłu sterownika PLC, karty Ethernet. Dzieje się to za pomocą wgrania prostego programu (zawierającego pewne specjalne bloki funkcyjne). Następnie, poprzez konfigurację odpowiednich opcji w VisiLogic, możliwe stanie się programowanie oraz uaktualnianie OS sterownika przy użyciu przewodu Ethernet.

Jeśli Twój sterownik Vision lub Samba nie posiada gniazda Ethernet, a jesteś zainteresowany/a tą funkcjonalnością, napisz do nas na sterowniki@elmark.com.pl . Pomożemy dobrać Ci odpowiedni moduł rozszerzający.

Możesz również sam/sama zapoznać się z ofertą akcesoriów dla sterowników na stronie sklepu ELMARK Automatyka.

Używane zasoby

W tym przypadku, komunikacja Ethernet na linii PLC – VisiLogic pokazana będzie na przykładzie sterownika Vision V430. Oczywiście, możesz wykonać przedstawione dalej kroki z dowolnym sterownikiem Vision/Samba. Musisz jedynie pamiętać, aby w pewnych polach, wymagających na przykład podania modelu sterownika, wprowadzić dane odnoszące się do Twojego sprzętu.

Używany port Ethernet (opcjonalny w sterowniku V430) prezentuje się następująco.

Port Ethernet V100-17-ET2 dla sterownika PLC Vision v430
Port Ethernet V100-17-ET2 dla sterownika PLC Vision v430

PLC wraz z odpowiednim gniazdem (po jego montażu na płycie głównej sterownika) prezentuje się natomiast jak niżej.

Gniazdo Ethernet na panelu bocznym sterownika PLC
Gniazdo Ethernet na panelu bocznym sterownika PLC

Komunikacja PLC – VisiLogic z wykorzystaniem Ethernet

Jak już było to wspominane, pierwszym krokiem jest ustanowienie standardowej komunikacji szeregowej sterownika z programem VisiLogic. Posłuży to w celu odpowiedniej inicjalizacji karty Ethernet sterownika.

Prosty program inicjujący działanie karty Ethernet sterownika

Przed przystąpieniem do tworzenia programu, należy w środowisku VisiLogic określić model i typ używanego sterownika PLC. Opisano to w lekcji pierwszej. Całość odbywa się w oknie „Hardware Configuration”. W oknie tym należy podać informacje na temat posiadanego modelu sterownika oraz zestawu jego wbudowanych I/O.

Określenie typu i modelu urządzenia w VisiLogic
Określenie typu i modelu urządzenia w VisiLogic

Teraz można przejść do budowy prostej logiki sterownika. W celu wykonania tego zadania, użyjemy (póki co) gotowego domyślnego podprogramu „! Main Routine”. Do programu należy dodać bloczki, które ustawią między innymi:

  • nazwę sterownika (PLC NAME);
  • parametry komunikacji TCP/IP (adres IP, maskę podsieci, bramę domyślną);
  • wykorzystywany socket, protokół, port komunikacyjny sterownika, oraz tryb pracy PLC podczas komunikacji.

Większość bloczków funkcyjnych używanych w celu inicjalizacji komunikacji PLC znajduje się w zakładce „Com” na pasku narzędzi VisiLogic.

Bloczki funkcyjne do inicjalizacji komunikacji PLC
Bloczki funkcyjne do inicjalizacji komunikacji PLC

Potrzebną konfigurację na tym etapie, prezentuje poniższy krótki film.

Inicjalizacja karty Ethernet i parametrów komunikacji

Opis logiki inicjalizującej kartę Ethernet sterownika PLC

Wynikiem kroków zawartych w powyższym krótkim filmie jest poniższa prosta logika.

Prosta logika PLC
Prosta logika PLC

Pierwszy element to „styk normalnie otwarty”. Przypisano do niego bit systemowy SB2. Jest to bit, który przechodzi w stan „wysoki” (zwiera połączenie) tylko raz – przy uruchomieniu sterownika. Używa się go najczęściej w celu jednokrotnego wywołania bloczków konfiguracyjnych (jak tutaj).

Drugi element to „Set PLC Name”. Pozwala on na przypisanie do danego PLC dowolnej nazwy. Jest to wymagane w celu nawiązania komunikacji z wykorzystaniem Ethernet.

Trzeci element – „Card Init”, ustawia parametry karty Ethernet, takie jak adres IP, maskę podsieci, czy bramę domyślną.

Ostatnim bloczkiem jest „Socket Init”. Socket to nic innego, jak definicja punktu końcowego w komunikacji, gdzie wysyłane bądź odbierane są dane. Tak więc, w ustawieniach tego obiektu zmienia się opcje takie, jak:

  • numer Socket’u (Socket) – dla połączeń na przykład z VisiLogic będzie to Socket 1; więcej na temat używanych protokołów i socket’ów można przeczytać w plikach pomocy VisiLogic;
Pliki pomocy konfiguracji Ethernet dla PLC od Unitronics w środowisku VisiLogic
Pliki pomocy konfiguracji Ethernet dla PLC od Unitronics w środowisku VisiLogic
  • protokół komunikacji (Protocol) – w tym przypadku należy wybrać TCP; na filmie widać było jednak kilka innych, jak np. HTTP dla obsługi wbudowanego WebServera;
  • port używany przez sterownik PLC (Local Port) – domyślny port komunikacyjny do wymiany danych z VisiLogic to 20256; inne domyślne porty znaleźć można w plikach pomocy (patrz zdjęcie wyżej);
  • tryb komunikacji (Client\Server) – w tym przypadku należy ustawić PLC w tryb Server (Slave); sprawi to, że sterownik będzie czekał (nasłuchiwał) na połączenie na porcie 20256, pod adresem IP skonfigurowanym w poprzednim bloczku.

Podczas uzupełniania pól w każdym z powyższych elementów w drabince, zauważyć można dodatkową opcję do zaznaczenia – „Address of MI”. Istnieje ona w celu wskazania adresu zmiennej, która przechowuje potrzebne informacje (np. adres IP), zamiast wpisywania go ręcznie. Jest to przydatne przy projektowaniu rozwiązań, gdzie użytkownik wprowadza parametry (np. adres IP) na panelu HMI sterownika.

Wgranie programu z konfiguracją karty Ethernet na sterownik PLC

Teraz, gdy już cała prosta logika jest napisana, należy skompilować oraz wgrać program na PLC, tak, jak na filmie poniżej.

Wgranie programu na sterownik PLC

Do wgrywania programów służą opcje z zakładki „Connection -> Download„. W tym przypadku wykorzystano „Stop – Download – Reset”. Zatrzyma ona sterownik, załaduje program, a następnie uruchomi PLC. Dzięki temu bit systemowy SB2 przejdzie jednorazowo w stan „wysoki”, a bloczki dodane w schemacie drabinkowym skonfigurują kartę Ethernet.

Na tym etapie należy pominąć wszelkie dalsze ostrzeżenia przy wgrywaniu programu. Zarówno one, jak i pozostałe opcje dotyczące programowania PLC zostaną omówione w kolejnych lekcjach.

Ustawienia komunikacji TCP/IP w VisiLogic

Teraz, gdy na sterownik wgrano nowy program, a sam PLC uruchomił się ponownie, można go podłączyć do komputera (lub switch’a łączącego PC i sterownik w jedną sieć) za pomocą przewodu Ethernet.

Należy tu oczywiście pamiętać o odpowiedniej konfiguracji karty sieciowej komputera, aby pozwalała ona na wymianę danych w ten sposób.

W programie VisiLogic należy natomiast otworzyć, prezentowane już wcześniej, okno „Communication & OS”. Tam trzeba będzie podać odpowiednie parametry:

  • Connection Type – w tym przypadku TCP/IP (Call) – to oprogramowanie VisiLogic ma wywołać połączenie ze sterownikiem, stąd parametr „Call”;
  • informacje dotyczące komunikacji ze sterownikiem – PLC Name, adres IP, port komunikacyjny.
Połączenie VisiLogic i PLC od Unitronics za pomocą Ethernet TCP/IP

Od teraz można łączyć się ze sterownikiem wykorzystując model TCP/IP komunikacji. Wystarczy, że PLC będzie widoczny w sieci, np. po podpięciu go do odpowiedniego switch’a.

Warto wiedzieć

TCP to protokół „połączeniowy”. Oznacza to, że przed rozpoczęciem transmisji danych, dwa punkty końcowe – tu: PLC oraz VisiLogic, weryfikują poprawność nawiązanego połączenia. Ma to swoje zalety, jak na przykład to, że mamy pewność, co do braku utraty przekazywanych pakietów danych. Wadą tego rozwiązania jest, że jeden punkt końcowy (socket) może obsługiwać tylko jedno takie połączenie w danym czasie.

Innymi słowy, po takiej konfiguracji jak przedstawiona wyżej, nie można połączyć się ze sterownikiem PLC za pomocą dwóch zewnętrznych klientów. Skonfigurowaliśmy tylko jeden socket na sterowniku (spośród możliwych 4) więc w danym czasie może być obsłużone tylko jedno połączenie TCP.

W celu poradzenia sobie tym problemem, można po prostu dodać więcej bloczków typu „Socket Init” do posiadanego schematu. Za ich pomocą można natomiast skonfigurować pozostałe socket’y, na których przebiegać będzie komunikacja sterownika z innymi klientami.

Konfiguracja socket dla PLC od Unitronics
Konfiguracja socket dla PLC od Unitronics

Warto powiedzieć też kilka słów w temacie używania zmiennych, jako źródeł danych przechowujących np. adresy IP – do konfiguracji karty Ethernet sterownika. Należy wtedy pamiętać o odpowiedniej modyfikacji schematu drabinkowego.

Teraz, konfiguracja parametrów karty Ethernet dla PLC przebiega raz – przy uruchomieniu. W przypadku, gdy podczas działania sterownika wymagana jest zmiana adresu IP czy numeru portu dla socket’a, można dodać elementy schematu drabinkowego, które wywołają omawiane tu bloczki więcej razy.

Śledząc pozostałe lekcje, dowiesz się więcej o projektowaniu HMI oraz nieco bardziej skomplikowanych schematów drabinkowych.

Podsumowanie

Komunikacja Ethernet wykorzystująca model TCP/IP daje dużo możliwości. Przede wszystkim, wymiana danych staje się prostsza oraz bardziej skalowalna, z uwagi na inną topologię połączeń w komunikacji TCP/IP względem szeregowej.

Po więcej lekcji, przejdź na stronę startową tego kursu.

Jeśli masz pytania, skontaktuj się z nami pod adresem e-mail: sterowniki@elmark.com.pl . Chętnie wysłuchamy również każdą konstruktywną krytykę na temat jakości tego kursu.