Komunikacja Powerflex 4M z Micro850 poprzez Modbus RTU - część 1

04.07.2025
Komunikacja Powerflex 4M z Micro850 poprzez Modbus RTU - część 1
Wizerunek autora

Wstęp

W tym artykule dowiesz się, w jaki sposób połączyć się z przemiennikiem częstotliwości PowerFlex 4M przy pomocy sterownika Micro850 używając protokołu komunikacyjnego Modbus RTU.

Konfiguracja PowerFlex 4M

Funkcje przycisków sterowania

Przed rozpoczęciem konfiguracji i pracy z przemiennikiem częstotliwości PowerFlex 4M warto zapoznać się z przyciskami znajdującymi się na panelu operatorskim. Zostały one opisane w poniższej tabeli. 

Przycisk Nazwa Opis
Przycisk Escape Escape Cofnięcie się o jeden krok w menu programowania / Anulowanie zmiany / Wyjście z trybu programowania.
Select Select Przejście o jeden krok w menu / Wybór cyfry parametru.
Strzałki Strzałki Przewijanie grup i parametrów / Zmiana wartości parametru.
Enter Enter Przejście do kolejnego poziomu menu programowania / Zapisanie zmiany.
Potencjometr Potencjometr Domyślne źródło prędkości. Kontrola przez P108.
Start Start Domyślne źródło uruchomienia. Kontrola przez P106.
Zmiana kierunku Zmiana kierunku Zmiana kierunku napędu. Kontrola przez P108.
Stop Stop Wyłączenie napędu. Domyślnie zawsze aktywny.
PowerFlex 4M

Ustawienie wybranych parametrów na panel

Panele PowerFlex posiada rozwijaną strukturę programu. Elementy menu pogrupowane są w grupy parametrów, w których wybiera się poszczególne parametry i ustawia ich wartości. 

Przed rozpoczęciem pisania programu musimy skonfigurować nasz przemiennik częstotliwości. Na początku przypisujemy parametrowi P106 (źródło startu silnika) wartość 5, która wskazuje zewnętrzny port komunikacyjny jako źródło uruchomienia. Informacje, jak to zrobić, znajdują się w poniższej tabeli.

Lp. Przyciski Wyświetlacz Opis kroku
1.

Po uruchomieniu przemiennika częstotliwości domyślnie na wyświetlaczu przedstawiony jest ekran główny (przedstawiony na grafice po lewej). Jeżeli wyświetlana jest tu jakakolwiek inna wartość, należy użyć klawisza „Esc” tak długo, dopóki nie pojawi się panel początkowy, a następnie przycisk „Enter”, aby przejść do ekranu wyboru parametrów.
2. Obecnie powinniśmy być w stanie zauważyć migającą literę. Jeżeli wyświetla się preferowana grupa parametrów, przechodzimy do kolejnego kroku. W innym wypadku przy pomocy przycisków nawigacyjnych zmieniamy parametry tak długo, dopóki nie wyświetla się docelowa grupa parametrów.
3. Gdy na wyświetlaczu pojawi się żądana grupa parametrów (oznaczona migającą literą „P”), ponownie naciskamy przycisk „Select”.
4. Następnie wyszukujemy wymagany parametr.
5.

albo

Gdy zostanie on znaleziony, używamy przycisku „Enter” albo „Select”, aby go zatwierdzić.
6.

albo

Ponownie klikamy „Enter” albo „Select”, aby zmienić wartość tego parametru.
7. Następnie ustawiamy wartość na 5.
8. Zatwierdzamy używając „Enter”.
9. Parametr został ustawiony. Aby powrócić do ekranu startowego, należy trzykrotnie nacisnąć przycisk „Esc”.

W analogiczny sposób ustawiamy poszczególne parametry według poniższej tabeli.

Nazwa Parametru Wartość ustawiona na PowerFlex 4M Opis Nadana cecha/parametr
P106 5 Źródło startu Zewnętrzny port komunikacyjny
P108 5 Źródło zadanej prędkości Zewnętrzny port komunikacyjny
C302 4 Prędkość transmisji danych (Baud Rate) 19200
C303 2 Adres węzła komunikacyjnego (Node Addr.) 2
C304 0 Działanie w przypadku utraty komunikacji Hamowanie swobodne
C305 5 Czas utraty komunikacji 5 sekund
C406 0 Liczba bitów danych/Parzystość/Liczba bitów stopu 8 bitów danych/brak parzystości/1 bit stopu

Dokładne informacje na temat poszczególnych parametrów znajdują się w Instrukcji Użytkownika na stronie Rockwell Automation.

Konfiguracja Micro850

Schemat połączeń

Połączenie pomiędzy komputerem a sterownikiem należy zrealizować przy użyciu kabla Ethernet. Przed rozpoczęciem konfiguracji należy upewnić się, że oba urządzenia znajdują się w tej samej podsieci IP i są w stanie się wzajemnie komunikować. Mikrokontroler został podłączony z przemiennikiem częstotliwości przy pomocy kabla RS485.

WAŻNA INFORMACJA: W przedstawionym przykładzie przemiennik częstotliwości PowerFlex 4M nie jest podłączony bezpośrednio do sterownika Micro850, lecz do zainstalowanego w nim modułu plug-in 2800-SERIALISOL. Istnieje możliwość nawiązania komunikacji również bez użycia tego modułu, jednak w takim przypadku należy zwrócić uwagę, aby podczas konfiguracji w CCW wybierać wbudowany port szeregowy sterownika.

Tworzenie nowego projektu

Otwieramy CCW, a następnie tworzymy nowy projekt poprzez kliknięcie „New”, a następnie „Create”.

 

Wyświetli nam się wówczas następujący panel.

Wybieramy z listy dostępnych urządzeń sterownik. W naszym wypadku będzie to 2080-LC50-24QBB. Jeżeli nie mamy pewności, który dokładnie model posiadamy możemy sprawdzić to na obudowie PLC.

Upewniwszy się, że wybrana została najnowsza wersja firmware’u klikamy następnie „Select”, aby zatwierdzić wybór mikrokontrolera, a następnie „Add to Project”, aby rozpocząć jego konfigurację.

Konfiguracja parametrów początkowych

Naszym oczom powinien ukazać się następujący panel, na którym po kliknięciu prawym przyciskiem myszy na pole „Empty” w zakładce „Plug-in Modules” dodajemy używany przez nas moduł. Jeżeli nie korzystamy z modułów rozszerzeń zamiast tego klikamy lewym przyciskiem myszy na pole „Serial Port”.

Następnie zmieniamy sterownik komunikacyjny z domyślnie ustawionego „CIP Serial” na „Modbus RTU”, a następnie ustawiamy parametry zgodnie z ilustracją poniżej.

Tworzenie programu do obsługi Modbus w CCW

Na początku należy upewnić się, że włączony jest domyślny tryb wyświetlania.
Po lewej stronie powinno być widoczne okno o nazwie „Project Organizer” – powinno ono wyglądać jak na ilustracji poniżej. Jeśli zamiast tego widoczny jest „Controller Organizer”, oznacza to, że aktywny jest motyw interfejsu „Logix”, który należy zmienić na domyślny.

Domyślny motyw Motyw "Logix"

W tym celu zmieniamy wartość ustawioną na górnej wstążce z „Logix” na „Default”.

Nowy program generujemy poprzez kliknięcie prawym przyciskiem myszy na "Programs" i następnie wybieramy diagram w języku drabinkowym.

Po dwukrotnym, powolnym kliknięciu na nowo utworzony program (domyślnie „Prog1”), jesteśmy w stanie zmienić jego nazwę. 

Po dwukrotnym, szybkim kliknięciu na nowo utworzony program powinien się on otworzyć i prezentować w następujący sposób.

Używając opcji „Search” wyszukujemy bloku „MSG_MODBUS” (nie należy mylić go z „MSG_MODBUS2”), a następnie przeciągamy na znajdującą się poniżej linię logiczną.

W dalszej kolejności zmienimy nazwę nowo wstawionego bloku dla lepszej czytelności. Aby to zrobić klikamy na niego dwukrotnie, powinno pojawić się okno przedstawione poniżej.

W polu „Instance” zastępujemy „MSG_MODBUS_1” wybraną przez siebie nazwą (w naszym przypadku będzie to „Read_Modbus”), a następnie klikamy „OK”, aby to zatwierdzić. 

Opcjonalnie możemy teraz zmienić szerokość komórek, na schemacie w celu poprawy czytelności. Aby to zrobić klikamy prawym przyciskiem myszy na pustym polu w diagramie, a następnie wybieramy opcję „Properties”.

Po prawej stronie powinien pojawić się panel właściwości dla "LD Container". Jeżeli zamiast tego wyświetlają się właściwości innego elementu, należy kliknąć lewym przyciskiem myszy na puste pole obok lub pod stworzoną wcześniej linię logiczną.

W oknie tym musimy zmienić wartość „Cell Width” z 30 na 45. 

Zmiany prezentują się w następujący sposób.

Blok MSG_MODBUS przed zmianami Blok MSG_MODBUS po zmianach

Następnie klikamy dwukrotnie na "Local Variables".

Na środku ekranu powinien pojawić się ekran ze zmiennymi lokalnymi.

Przy pomocy plusa, znajdującego się w lewej części panelu dodajemy zmienne, które będą wykorzystane do komunikacji przy pomocy Modbusa i ustawiamy ich typ zgodnie z poniższym zdjęciem.

Następnie przypisujemy zmienne do odpowiednich pól w bloku „MSG_MODBUS”. Robimy to poprzez kliknięcie na odpowiednie puste pole w wyżej wspomnianym bloku, a następnie wpisanie odpowiedniej, wcześniej zadeklarowanej zmiennej. Całość powinna prezentować się w następujący sposób.

W kolejnym kroku przypisujemy części zmiennej określone wartości według poniższej grafiki. Objaśnienie poszczególnych parametrów znajduje się w dalszej części artykułu.

Wyjaśnienie parametrów

W poniższych tabelach znajduje się zestawienie ustawionych parametrów.

Nazwa parametru

Wartość

Opis

Channel

5

Numer portu szeregowego, z którym kontaktować się będzie Modbus:

  • 2 dla wbudowanego portu szeregowego

  • 5-9 dla portów szeregowych instalowanych jako moduły rozszerzeń w slotach 1-5

    • 5 dla slotu 1

    • 6 dla slotu 2

    • 7 dla slotu 3

    • 8 dla slotu 4

    • 9 dla slotu 5

TriggerType

0

Sposób wyzwalania komunikatu:

0 - wiadomość wyzwalana jednokrotnie: Wiadomość zostanie wysłana tylko raz, w momencie, gdy wejście sterujące (IN) zmieni stan z False (0) na True (1).

1 - wiadomość wyzwalana ciągle: Wiadomość będzei wysyłana nieprzerwanie, dopóki wejście sterujące (IN) pozostaje w stanie True (1).

Cmd

3

Wykonywany komunikat

  • 01- Odczyt stanu cewek (0xxxx)
  • 02 - Odczyt stanu wejść dyskretnych (1xxxx)
  • 03 - Odczyt rejestrów podtrzymywanych (4xxxx)
  • 04 - odczyt rejestrów wejściowych (3xxxx)
  • 05 - zapis pojedynczej cewki (0xxxx)
  • 06- zapis pojedynczego rejestru (4xxxx)
  • 15 - zapis wielu cewek (0xxxx)
  • 16 - zapis wielu rejestrów (4xxxx)

ElementCnt

2

Liczba bitów danych do odczytu lub zapisu podczas pojedynczej operacji.

 

Nazwa parametru

Wartość

Opis

Addres

8193

Adres rejestru Slave do odczytu/zapisu danych

Node

2

Adres węzła, będący unikalnym identyfikatorem urządzenia w sieci.

Określenie częstotliwości odczytywania danych

Utworzony program umożliwia już komunikację z przemiennikiem częstotliwości PowerFlex 4M za pośrednictwem protokołu Modbus. W obecnej konfiguracji transmisja odbywa się w sposób ciągły, co prowadzi do nieustannego obciążenia sieci i uniemożliwia przesyłanie dodatkowych poleceń. Naszym celem jest ograniczenie odczytu danych do pojedynczej ramki wysyłanej w określonych odstępach czasu. Aby to uczynić, trzeba podjąć następujące kroki.

Dodajemy do projektu rozgałęzienie – możemy to zrobić poprzez wyszukanie "branch", a następnie umieszczamy je obok stworzonego wcześniej modułu.

Następnie przenosimy blok Read_Modbus na dolny fragment rozgałęzienia, uzyskując efekt jak na poniższym zdjęciu.

Kolejnym elementem jest dodanie timera, który będzie się automatycznie resetował co określony czas. Analogicznie do poprzedniej operacji, wyszukujemy go jako „TON” i dodajemy na pierwszą linię logiczną, a także zmieniamy jego nazwę, aby ułatwić późniejszą identyfikację – w naszym przypadku będzie to Sample_Rate. Dodatkowo dodajemy dwa styki: jeden rozwierny, drugi zwierny.

Całość powinna prezentować się w następujący sposób.

Aby usunąć pojawiające się ostrzeżenia wynikające z braku powiązania z wyrażeniem typu BOOL, przypisujemy je do wyjścia timera. Robimy to poprzez wpisanie zadeklarowanej przez nas nazwy timera wraz z końcówką .Q. W naszym przypadku będzie to: Sample_Rate.Q.

Dodatkowo tworzymy kolejną zmienną, która będzie określała jak często sterownik powinien odczytywać wiadomości z PowerFlexa 4M. Następnie przypisujemy ją do timera.

Typ zmiennej TIME jest zapisywany w formacie t#, po którym następuje wartość czasu z jednostkami:

  • d – dni
  • h – godziny
  • m – minuty
  • s – sekundy
  • ms – milisekundy

W przypadku bardziej skomplikowanych wartości można łączyć kilka jednostek w jednym zapisie.

Przykładowo:

  • t#2d5h10m30s500ms – 2 dni, 5 godzin, 10 minut, 30 sekund i 500 milisekund
  • t#3s200ms – 3 sekundy i 200 milisekund

Finalnie program powinien prezentować się w następujący sposób.

Łączenie z mikrokontrolerem

Aby połączyć się z mikrokontrolerem, musimy wrócić do zakładki Micro850, a następnie wybrać przycisk Connect, znajdujący się w prawym górnym rogu.

Jeżeli łączymy się po raz pierwszy, otworzy nam się schemat dostępnych połączeń, z którego musimy wybrać nasz sterownik i zatwierdzić poprzez wciśnięcie „OK”. Jeżeli łączyliśmy się już wcześniej z urządzeniem poprzez daną ścieżkę, okno to zostanie pominięte, a połączenie między komputerem a mikrokontrolerem zostanie nawiązane automatycznie.

Następnie pojawią się ostrzeżenia na temat niezgodności programu przesyłanego z komputera z tym zastanym na mikrokontrolerze. Jako że chcemy uruchomić program napisany w CCW, wybieramy opcję Download current project to the controller, a następnie Download i potwierdzamy klikając „Tak”.

Aby sprawdzić, czy udało się poprawnie połączyć, przechodzimy ponownie do zakładki Micro850, a następnie wybieramy Diagnose → Communication.

Następnie, jeżeli używaliśmy modułu Plug-in jako Channel, wybieramy „Slot 1”.

Zgodnie z ustawioną wartością zmiennej Time_to_read, co 2 sekundy mikrokontroler wysyła ramkę z informacją o aktualnych parametrach falownika.

Jeżeli chcesz dowiedzieć się, jak sterować przemiennikiem częstotliwości PowerFlex 4M poprzez mikrokontroler, zachęcam do przeczytania drugiej części tego artykułu.

Skontaktuj się ze specjalistą Elmark

Masz pytania? Potrzebujesz porady? Zadzwoń lub napisz do nas!