Strona główna ASTOR
Automatyka w praktyce

Komunikacja EtherCAT – konfiguracja i przykładowa aplikacja
Kurs programowania w Codesys odc. 12

Kontakt w sprawie artykułu: Mateusz Pytel - 2022-12-13

Z tego artykułu dowiesz się:

  • jak dodać obsługę EtherCAT do środowiska Codesys,
  • jak skonfigurować komunikację krok po kroku.

Zapraszamy na kolejny odcinek naszego kursu. Będzie on poświęcony komunikacji za pomocą protokołu EtherCAT w środowisku Codesys.

Kurs programowania w Codesys

Część I – Podstawowe funkcjonalności środowiska Codesys

1. Pierwsze kroki w Codesys. Jak stworzyć program?
2. Pierwsze podłączenie i przygotowanie Codesys do pracy ze sterownikiem PLC.
3. Język drabinkowy (LD).
4. Typy danych w Codesys, rodzaje zmiennych, sposoby ich tworzenia.
5. Język schematów blokowych (FBD).
6. Tworzenie podstawowej wizualizacji HMI.
7. Język strukturalny (ST).
8. Diagnostyka w Codesys – jak sprawdzać działanie oprogramowania i sterownika?
9. Język bloków funkcyjnych (CFC).
10. Funkcja, blok funkcyjny, program – zmodyfikuj program w Codesys dla lepszej funkcjonalności.

Część II – Zaawansowane funkcje i możliwości środowiska Codesys

11. Komunikacja MQTT – jak skonfigurować w Codesys?
12. Komunikacja EtherCAT – konfiguracja i przykładowa aplikacja.
13. Softmotion – synchronizacja serwonapędów przy pomocy sterownika PLC.
14. Komunikacja Modbus RTU i TCP/IP w środowisku Codesys.
15. Tworzenie projektów w Codesys ze sterownikami bezpieczeństwa Safety: architektura systemu bezpieczeństwa.
16. Programowanie sterownika bezpieczeństwa w Codesys.
17. Integracja sterownika PLC z systemem SCADA w Codesys.
18. Konfiguracja maszyny CNC z wykorzystaniem sterownika PLC – obsługa G-Code.

Dodatkowe materiały i lekcje dla kursantów:

1. Jak stworzyć wirtualny serwonapęd w Codesys? Instrukcja krok po kroku.
2. Przykładowa aplikacja Codesys w języku ST i LD: napełnianie i opróżnianie zbiorników wraz z alarmowaniem.

Najczęściej zadawane pytania:

Sprawdź odpowiedzi na najczęściej zadawane pytania dotyczące środowiska Codesys.

Czym jest EtherCAT?

EtherCAT jest to nowoczesny protokół sieciowy, przeznaczony do komunikacji między urządzeniami w aplikacjach przemysłowych. Dzięki niemu możemy przekazywać informacje do poszczególnych urządzeń za pomocą kart sieciowych i okablowania. EtherCAT działa w architekturze master-slave – jedno z urządzeń jest nadrzędne i zarządza pracą jednego lub wielu urządzeń podrzędnych.

W odróżnieniu od klasycznych protokołów ethernetowych EtherCAT działa w architekturze master-slave – jedno z urządzeń jest nadrzędne i zarządza pracą jednego lub wielu urządzeń podrzędnych. Dane przesyłane są do wielu urządzeń jednocześnie – informacja odbierana jest przez wszystkie urządzenia w sieci, gdzie każdy z nich najpierw sprawdza czy znajdują się w nim dane bezpośrednio dla niego.

Przykładowy schemat połączenia sterownika PLC Astraada One, modułów IO oraz serwonapędów Astraada SRV przez sieć EtherCAT. Źródło: ASTOR

Dodawanie biblioteki do obsługi serwonapędów w środowisku Codesys

Konfigurację połączenia należy rozpocząć od dodania biblioteki do obsługi serwonapędu. Utwórz nowy projekt w środowisku Codesys, dodaj do niego swój sterownik i wybierz język, w którym chcesz programować. Po utworzeniu nowego projektu, przejdź do dodania biblioteki. W tym celu wybierz opcję Tools na górnym pasku, a następnie wybierz Device Repository.

Otwarcie Device Repository. Źródło: ASTOR

Otworzy się okno Device Repository. W tym oknie zainstalujesz bibliotekę. Naciśnij przycisk Install po prawej stronie okna, odszukaj plik o rozszerzeniu .xml i potwierdź instalację.

Instalacja biblioteki. Źródło: ASTOR

Po instalacji urządzenie powinno wyświetlić w drzewie dialogowym okna. Zamknij okno i przejdź do następnego kroku.

Uaktywnienie protokołu EtherCAT

Kolejnym krokiem będzie uaktywnienie protokołu EtherCAT w Codesys. Aby to zrobić, należy dodać urządzenie nadrzędne do projektu. Kliknij prawem przyciskiem myszy na urządzenie w drzewku po lewej stronie i wybierz opcję Add Device.

Dodawanie nowego urządzenia do projektu. Źródło: ASTOR

Ukaże się okno, w którym dodasz urządzenie Master. W drzewku rozwiń rodzaj Fieldbuses, następnie rozwiń Ethercat oraz Master i wybierz urządzenie EtherCAT Master.

Dodawanie urządzenia Master. Źródło: ASTOR

W ten sposób dodałeś/łaś urządzenie typu Master do twojego projektu. Następnie dodaj urządzenie Slave do projektu. Nie zamykając poprzednio otworzonego okna dialogowego, kliknij na nowododane urządzenie Master, znajdujące się w drzewku projektu. Okno dialogowe zmieni swoją zawartość, ograniczając się tylko do urządzeń Slave EtherCAT. Rozwiń kategorie w drzewku i odszukaj urządzenie Slave współgrające z twoim urządzeniem Master.

Dodawanie urządzenia Slave. Źródło: ASTOR

W ten sposób dodałeś/łaś wszystkie urządzenia, potrzebne do poprawnej komunikacji poprzez EtherCAT.

Zmiana ustawień protokołu EtherCAT w Codesys

Skoro wiesz już, jak dodać protokół EtherCAT do projektu, możesz przejść do ustawień komunikacji sterownika z urządzeniem z poziomu środowiska Codesys. Najpierw sprawdź, czy sterownik jest poprawnie połączony z Codesys. Jeśli tak, przejdź do ustawień urządzenia Master. Kliknij na urządzenie EtherCAT_Master znajdujące się w drzewku projektu. Wyświetlą się opcje ustawień urządzenia, podzielone na kilka zakładek. Wybierz zakładkę General. W niej określ port, który zostanie zdefiniowany jako urządzenie Master 

Przed definicją portu, sprawdź czy jest on aktywny. Możesz to sprawdzić z poziomu przeglądarki, wpisując w nią adres 169.254.255.xx, gdzie xx to ostatnie dwie cyfry numeru seryjnego sterownika i wybierając opcję Configuration > Network.

Jeśli wybrany port działa w trybie EtherCAT, przejdź do Codesys, wciśnij przycisk Browse i wybierz ten sam port.

Wybór portu sterownika służącego jako EtherCAT Master. Źródło: ASTOR

W efekcie, w polu Source Address (MAC) zostanie wyświetlony adres MAC wybranego portu.

Dodatkowo w tej samej zakładce rozwiń pasek Options i zaznacz opcję Automatic restart slaves. Opcja ta pozwoli na samoczynne ponowienie próby komunikacji z serwonapędem w przypadku chwilowego niepowodzenia (np. rozłączenia na moment kabla komunikacyjnego EtherCAT).

Zaznaczenie opcji samoczynnego ponowienia próby komunikacji Źródło: ASTOR

Następnie przejdź do opcji urządzenia Slave. Wybierz to urządzenie w drzewku projektu, klikając na nie dwukrotnie. W zakładce General zaznacz opcję Enable Expert Settings i odznacz Check Product ID.

Zmiana ustawień urządzenia Slave. Źródło: ASTOR

Po dołączeniu obu urządzeń do sieci EtherCAT, zaprogramowaniu sterownika, uruchomieniu programu oraz skonfigurowaniu serwonapędu do komunikacji w sieci EtherCAT, sprawdź status komunikacji. Poprawna komunikacja z serwonapędem za pośrednictwem sieci EtherCAT będzie sygnalizowana następującymi ikonami:

Poprawne działanie protokołu. Źródło: ASTOR

Komunikacja z innymi urządzeniami za pomocą EtherCAT

W tej części artykułu zobaczysz różnicę w parametrach dostępnych po podłączeniu różnych urządzeń z wykorzystaniem komunikacji EtherCAT. Każde urządzenie dodaje się tak, jak zostało to pokazane powyżej. Dla każdego wymienionego w tym artykule urządzenia dostępny jest informator, dzięki któremu dowiesz się dokładnie, jak skonfigurować połączenie ze sterownikiem Astraada One oraz jak dodawać nowe parametry itp.

Dodawanie modułu wejść i wyjść z pomocą EtherCAT

Aby dodać wejścia i wyjścia fizyczne sterownika Astraada ONE, należy zainstalować biblioteki modułów I/O.

Należy pobrać dwa pliki:

  • Plik XML dla modułów IO sterownika EC2000 – komunikacja EtherCAT
  • Plik XML dla modułów ECC DIO oraz ECC AIO – komunikacja EtherCAT

Z menu wybierz opcję Tools, a następnie Device Repository, a następnie kliknij opcję Install z okna dialogowego i wybierz pliki, które pobrałeś/łaś. Po instalacji należy dodać urządzenie EtherCAT Master. Do środka urządzenia master dodasz wbudowany Buscoupler, który pozwoli dodać wejścia oraz wyjścia. Aby to zrobić, wybierz urządzenie EtherCAT Master w drzewku projektowym, naciśnij na niego prawym przyciskiem myszy i wybierz opcje Add Device. W oknie dialogowym wyszukaj urządzenie „onboard Buscoupler” i dodaj go do projektu jako urządzenie Slave.

Dodawanie Buscouplera. Źródło: ASTOR.

Dodanie Buscouplera pozwoli na dodanie do projektu wejść i wyjść dodawanych bezpośrednio do CPU. Aby je dodać, należy wybrać Buscoupler w drzewku projektowym, nacisnąć prawy przycisk myszy i wybrać opcję Add Device. W oknie dialogowym odszukaj twój model modułu, wykorzystując numer katalogowy i dodaj go do projektu.

Dodawanie modułu wejść cyfrowych Źródło: ASTOR.

Domyślna lista parametrów modułu dodawanych do CPU wygląda następująco:

Domyślna lista parametrów dla modułu 16 wejść cyfrowych. Źródło: ASTOR

Dla każdego bitu możesz przydzielić nazwę, której można będzie używać w projekcie.

Moduły I/O mogą być także podłączane z użyciem Bus Extender. Dodajemy go jako urządzenie Slave, analogicznie do modułów dodawanych bezpośrednio.

Dodawanie BusExtendera Źródło: ASTOR.

Po dodaniu BusExtendera nie pozostaje Ci nic innego niż dodanie dodatkowego modułu I/O. Kliknij sekcję Out w Extenderze i – analogicznie do poprzednio wymienionych przykładów – dodaj moduł I/O zgodny z numerem katalogowym.

Dodawanie modułu I/O za pomocą Extendera Źródło: ASTOR.

Domyślna lista parametrów dla modułu I/O podłączonych poprzez BusExtender wygląda następująco:

Domyślna lista parametrów dla modułu 16 wejść i 16 wyjść cyfrowych podłączonych poprzez BusExtender. Źródło: ASTOR

Wyjścia i wejścia są podzielone na dwie 8-bitowe grupy. Dla każdego bitu możesz przydzielić nazwę, której można będzie używać w projekcie.

Komunikacja z serwonapędem Astraada SRV z wykorzystaniem EtherCAT

Proces tworzenia komunikacji z serwonapędem został wykorzystany jako przykład we wcześniejszej części odcinka. Po poprawnej próbie komunikacji w zakładce EtherCAT I/O Mapping ukażą Ci się takie domyślne parametry:

Domyślna lista parametrów dla serwonapędu Astraada SRV serii 64. Źródło: ASTOR

Komunikacja z modułem RSTi-EP z wykorzystaniem EtherCAT

Komunikacja EtherCAT posłuży Ci także do skonfigurowania połączenia z wyspą wejść/wyjść, niezależnie od producenta. W tym przypadku wykorzystany został sterownik PLC Astraada ONE oraz moduł I/0 Emerson PACSystems RSTi-EP, a domyślna lista parametrów wygląda następująco:

Domyślna lista parametrów dla modułu I/0 Emerson PACSystems RSTi-EP. Źródło: ASTOR

Połączenie sterownika PLC z przemiennikiem częstotliwości Astraada DRV-28A za pomocą karty EtherCAT

Proces tworzenia komunikacji z przemiennikiem częstotliwości jest taki sam, jak w przypadku dodawania serwonapędu. Po poprawnej próbie komunikacji w zakładce EtherCAT I/O Mapping ukażą Ci się takie domyślne parametry:

Autor artykułu: Mateusz Steczkowski

Newsletter Poradnika Automatyka

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

Please wait...

Thank you for sign up!

Czy ten artykuł był dla Ciebie przydatny?

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

Ten artykuł nie był jeszcze oceniony.

Zadaj pytanie

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Jedna odpowiedź do “Komunikacja EtherCAT – konfiguracja i przykładowa aplikacja | Kurs programowania w Codesys odc. 12”

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *