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:
- Instrukcja obsługi przekaźnika programowalnego Eaton easyE4
- Instrukcja obsługi oprogramowania EasyBuilder Pro
Zobacz też: Kurs programowania sterownika easyE4
![]() ![]() |