Do Projektu iAutomatyka dołączyli:

Publikacja zgłoszona do 🎁 Konkursu iAutomatyka
https://iautomatyka.pl/wp-content/uploads/2020/01/banner.png

Komunikacja Eaton easyE4 z HMI Weintek


Panele operatorskie firmy Weintek wyróżniają się na tle konkurencji ogromnymi możliwościami integracji z innymi urządzeniami automatyki przemysłowej. Producent wyposażył swoje HMI w kilkaset protokołów komunikacyjnych, pozwalających na wymianę danych ze sterownikami PLC w sposób bezpośredni, operując na rejestrach wykorzystywanych urządzeń. W praktyce używanie gotowego sposobu komunikacji znacznie ułatwia oraz skraca pracę integratora systemów automatyki.

Jednak co zrobić w przypadku, gdy na liście predefiniowanych protokołów nie ma sterownika, który zostanie wykorzystany w projekcie? W jaki sposób zestawić komunikację między panelem operatorskim a easyE4, skoro producent nie przewidział takiej ewentualności? Czy istnieje alternatywny sposób komunikacji?

W tym artykule chciałbym opisać sposób podłączenia panela operatorskiego Weintek z przekaźnikiem programowalnym Eaton easyE4.


Możliwości komunikacyjne Eaton easyE4

Z informacji zawartych w dokumentacji technicznej wynika, że easyE4 może komunikować się z innymi urządzeniami poprzez interfejs Ethernet na kilka sposobów, między innymi poprzez sieć NET oraz Modbus TCP. Pierwsza z możliwości ogranicza się do wymiany informacji między przekaźnikami, za pomocą specjalnego wewnętrznego protokołu, poprzez dedykowane rejestry typu NET. Urządzenia mogą być grupowane i tworzyć klastry, jednak muszą pozostawać w tej samej podsieci.

Obsługa protokołu Modbus TCP pozwala na dostęp do przekaźnika poprzez tzw. urządzenia third-party, a więc niekoniecznie związane z firmą Eaton. Producent w dokumentacji technicznej umieszcza dokładny opis ramki komunikacyjnej oraz zestaw funkcji, służących do odczytu lub zapisu odpowiednich rejestrów.

W dalszej części rozdziału dotyczącego komunikacji poprzez Modbus TCP znajduje się tabela opisująca w jaki sposób rejestry urządzenia zostały zmapowane na adresy Modbus, oraz jakimi kodami funkcji należy je odczytywać i zapisywać. Poniżej znajduje się jej fragment.

Konfiguracja połączenia z panelem HMI

Konfigurację połączenia przekaźnika z panelem operatorskim należy zacząć od uruchomienia usługi komunikacji poprzez Modbus TCP w easyE4. W oprogramowaniu easySoft 7, w widoku projektu, należy wybrać zakładkę „Modbus” i zaznaczyć opcję „Serwer Modbus TCP aktywny”. Następnie użytkownik powinien zdefiniować, które ze znaczników będą dostępne do zapisu i odczytu, oraz czy urządzenia zewnętrzne będą miały dostęp do aktualnego stanu wejść i wyjść fizycznych, a także zegara RTC przekaźnika. Ostatnią czynnością związaną z konfiguracją easyE4 jest wgranie parametrów do urządzenia.

Parametryzację komunikacji od strony panela operatorskiego należy rozpocząć od dodania nowego połączenia poprzez protokół Modbus TCP. W tym celu w oprogramowaniu EasyBuilder Pro należy otworzyć okno „Ustawienia Systemowe Projektu”, a następnie kliknąć przycisk „Nowe Urządzenie/Serwer”.

Okno, które się pojawi pozwala na konfigurację połączenia z nowym urządzeniem. „Typ urządzenia” jest w tym konkretnym wypadku protokołem, poprzez który nastąpi połączenie. W rubryce należy wskazać pozycję „MODBUS TCP/IP”, natomiast w polu „IP” wprowadzić adres przekaźnika oraz port komunikacyjny określony w dokumentacji.

Rejestry easyE4 a Weintek

Ostatnim krokiem na drodze do połączenia obu urządzeń jest weryfikacja odczytu i zapisu rejestrów przekaźnika poprzez panel operatorski. Niestety, jak w przypadku wielu innych producentów, standard Modbus TCP przyjęty przez Eaton’a nie do końca pokrywa się z tym używanym przez Weintek’a. Z tego powodu tabelę zmapowanych rejestrów należy traktować jako swoisty „drogowskaz”, natomiast samych rejestrów powinno się poszukiwać metodą prób i błędów.

Na szczęście, po weryfikacji lokalizacji konkretnych danych, okazuje się, że standardom przyjętym przez obydwu producentów wcale nie jest tak daleko.

Testując odczyt i zapis kolejnych rejestrów można zaobserwować, że adres Modbus’owy Weintek’a jest powiększony o jeden w stosunku do zmapowanego rejestru w easyE4. Należy również zwrócić uwagę na fakt, że kody funkcji podane przez Eaton’a nie zawsze działają poprawnie. Odczytując bity, a więc np. wejścia, wyjścia, czy też markery, oprócz kodu funkcji należy wykorzystać zapis „single_bit”.

Dla przykładu, odczyt wyjścia Q1 będzie się odbywał w następujący sposób:

  • Q1 – 0x01 1 (Modbus easyE4) – 0x_single_Bit 2 (Modbus Weintek)

Odczyt wejścia binarnego I1 będzie wyglądał następująco:

  • I1 – 0x02 1 (Modbus easyE4) –  1x_single_Bit 2 (Modbus Weintek)

Odczyt stanu wejścia analogowego IA1 umożliwi poniższa funkcja:

  • IA1 – 0x04 1 (Modbus easyE4) –  3x 2 (Modbus Weintek)

Odczyt oraz zapis słowa MW jest możliwy dzięki następującemu zapisowi:

  • MW1 – 0x03 1001 (Modbus easyE4) –  3x 1002 (Modbus Weintek)

Odczyt i zapis markerów należy wykonywać za pomocą różnych kodów funkcji i operując na różnych pulach rejestrów. Podczas odczytu, użytkownik może wykorzystać funkcję 0x02, a więc przykładowo:

  • M1 (odczyt) – 0x02 1001 (Modbus easyE4) –  1x_single_Bit 1002 (Modbus Weintek)

Zapis tego samego markera polega na ustawieniu odpowiedniego bitu w odpowiednim rejestrze MW. Należy pamiętać, że zawiera on 16 bitów typu M. Budowę pamięci najlepiej przedstawia tabela pochodząca z dokumentacji, której fragment zamieszczony został poniżej.

Mając świadomość, że M1 to pierwszy bit w słowie MW1, jego zapis będzie wyglądał w następujący sposób:

  • M1 (zapis) – 0x06 1001 01 (Modbus easyE4) –  3x_bit 1002 00 (Modbus Weintek)

Dla przykładu, modyfikacja markera M100 będzie możliwa, za pomocą następującego zapisu:

  • M100 (zapis) – 0x06 1007 04 (Modbus easyE4) –  3x_bit 1008 03 (Modbus Weintek)

Odczyt bitów diagnostycznych będzie możliwy w następujący sposób:

  • ID10 – 0x02 3010 (Modbus easyE4) –  1x_single_bit 3011  (Modbus Weintek)

Natomiast wartości zegara RTC mogą zostać odczytane za pomocą poniższej funkcji:

  • Seconds – 0x03 5000 (Modbus easyE4) –  4x 5001  (Modbus Weintek)

Projekt w EasyBuilder Pro

Do artykułu załączam prosty projekt w EasyBuilderPro, pozwalający na odczyt i zapis wybranych rejestrów przekaźnika programowalnym Eaton easyE4.

Dodatkowo, drugie okno zawiera konwerter pozwalający na obliczenie adresów rejestrów, które należy odczytać lub zapisać w panelu operatorskim, aby poprzez protokół Modbus uzyskać dostęp do konkretnych komórek pamięci przekaźnika.

Adres pozwalający na pobranie projektu znajduje się poniżej:

EBProject_Eaton_easyE4_Weintek

Bibliografia

W trakcie pisania artykułu korzystano z wiedzy technicznej zaczerpniętej między innymi z następujących dokumentów:

Zobacz też: Kurs programowania sterownika easyE4

Artykuł został nagrodzony w Konkursie iAutomatyka – edycja Styczeń 2020Nagrodę Szybkoschnący ręcznik + zestaw SKINTOP + zestaw gadżetów dostarcza ambasador konkursu, firma LAPP.


Utworzono: / Kategoria: , , , ,

Reklama

Newsletter

Zapisz się i jako pierwszy otrzymuj nowości!



PRZECZYTAJ RÓWNIEŻ



NAJNOWSZE PUBLIKACJE OD UŻYTKOWNIKÓW I FIRM

Reklama



POLECANE FIRMY I PRODUKTY