Do Projektu iAutomatyka dołączyli:

https://iautomatyka.pl/wp-content/uploads/2018/05/3PD-COVER.png

Sterowanie falownikiem SEW za pomocą 3 danych procesowych w sieci Profibus

autor: Maciej Pala.

W dzisiejszych czasach, systemy automatyzacji przemysłowej są coraz to bardziej rozbudowane i rozproszone. W systemach tych sterowanie i diagnostyka urządzeń sterujących oraz urządzeń peryferalnych jest przeprowadzana dzięki sieciom przemysłowym w szczególności Profibus. We wcześniejszym artykule omówiłem diagnostykę sieci Profibus, tym razem poruszę inną ważną kwestie jaką  jest uruchomienie i kontrola urządzeń peryferalnych dzięki sieci Profibus. Chciałbym przedstawić na przykładzie mojej stacji badawczej, metodę sterowania falownikiem SEW Movidrive Compact 41 za pomocą 3 danych procesowych

(3 Process Data Words – 3PD) przy użyciu sterownika PLC Siemens serii S7-300.

W celu przedstawienia całego procesu sterowania wykorzystamy następujące urządzenia:

  • HMI TP177B (DP Adres 1)
  • PLC 317-2DP (DP Adres 2)
  • ET-200M (DP Adres 3)
  • SEW Movidrive Compact 41 (DP Adres 4).

Potrzebne też będzie oprogramowanie SIEMENS STEP 7, WINCC FLEXIBLE oraz pakiet SEW MOVITOOLS.

Dane Procesowe (PD) czyli wszystkie dane (krytyczne czasowo w czasie rzeczywistym) które muszą być przetwarzane lub przesyłane z dużą prędkością. Dane te charakteryzują się tym, że są zawsze aktualne. Przykładami takich danych procesowych są wartości zadane i rzeczywiste wartości falownika. Są wymieniane w cyklach między PLC i falownikiem.Sterowanie Falownikiem za pomocą danych procesowych odbywa się w sieci komunikacyjnej Profibus.  Dane wejściowe i wyjściowe powinny być traktowane osobno. Tak aby można było określić które dane będą wartościami zadanymi (dane wyjściowe) przekazywane ze sterownika do falownika, a które będą wartościami rzeczywistymi (dane wejściowe) przekazywanymi z falownika do sterownika PLC.

1. Założenia

Falownik należy kontrolować z poziomu panelu HMI za pomocą trzech danych procesowych (3PD). Wyjściowe Dane Procesu: Słowo Sterujące 1, Prędkość Zadana i Rampa muszą być określone przez sterownik. Natomiast falownik ma zwrócić Wejściowe Dane Procesu: Słowo statusu 1, Aktualną Prędkość i Prąd wyjściowy, do sterownika PLC. Silnik ma zostać przyspieszony lub spowolnione z rampą, która jest określona przez operatora na panelu HMI i która może być ciągle zmieniana. Awaryjne zatrzymanie ma miejsce w ciągu 200 ms. Falownik musi również rozpoznać błąd Profibus, który trwa dłużej niż 100 ms i musi zatrzymać silnik stosując szybkie zatrzymanie.W sytuacji zatrzymania awaryjnego falownik musi wykonać szybkie zatrzymanie niezależnie od Profibus, bezpośrednio przez zaciski wejściowe.


2. Konfiguracja SEW Movidrive Compact 41

Zacznę od podłączenia falownika zgodnie z instrukcją obsługi. Podpiąłem falownik do zewnętrznego zasilania 24 V (zaciski VI24 i DGND). Następnie wejście falownika DI00 połączyłem z wyjściem sterownika Q5.0, na koniec przyłączyłem przycisk wyłącznika awaryjnego z zaciskiem wejściowym DI03 w falowniku aby funkcja zatrzymania awaryjnego działała niezależnie od Profibus.  Reszta wejść w falowniku nie jest potrzebna w tym przykładzie.

 

Teraz konfiguracja falownika, najpierw:

Factory Reset.

Zresetuje falownik do ustawień fabrycznych, w oprogramowaniu SEW SHELL MOVITOOLS

Parametr 802 – Factory Settings – Yes

Sterowanie i wybór wartości zadanej.

Parametry można przypisać do falownika poprzez Profibus natychmiast po włączeniu zasilania; żadne dodatkowe ustawienia nie są konieczne. Aby sterować falownikiem poprzez Profibus, musi on najpierw zostać przełączony na odpowiednie źródło sterowania i źródło wartości zadanej. Do tego służą parametry P100 i P101, w oprogramowaniu SEW SHELL MOVITOOLS.

Parametr P100 określa interfejs komunikacyjny falownika używany dla wartości zadanej (Setpoint Source). Wybieram – FIELDBUS.

Parametr P101 określa sposób sterowania falownikiem (Control Signal Source). Falownik oczekuje słowa kontrolnego ze źródła. Wybieram – FIELDBUS.

Process data description.

Należy zmienić parametry opisu danych procesowych dla danych wejsciowych i wyjsciowych:

  • P870 Deskrypcja wartości zadanej PO1 – CONTROL WORD 1 (Słowo kontrolne 1)
  • P871 Deskrypcja wartości zadanej PO2 – SPEED (Prędkość zadana)
  • P872 Deskrypcja wartości zadanej PO3 – RAMP (Rampa prędkości)
  • P873 Deskrypcja wartości aktualnej PI1 – STATUS WORD 1 (Słowo statusu 1)
  • P874 Deskrypcja wartości aktualnej PI2 – SPEED (Aktualna prędkość)
  • P875 Deskrypcja wartości aktualnej PI3 – OUTPUT CURRENT (Aktualny prąd wyjściowy)

Po zmianie opisu wartości zadanej dla danych wejściowych procesu, falownik automatycznie blokuje wartości zadane za pomocą P876 PO Data Enable – NO.

Ponownie trzeba włączyć wartości zadane przez Profibus za pomocą

  • P876 PO Data Enable – YES.
  • P877 Konfiguracja Danych Procesowych – 3PD (3 Dane Procesowe)

Binary Input Assignment

Przypisanie wejść cyfrowych falownika:

  • P600 Wejście Cyfrowe DI01 – NO FUNCTION  (Bez funkcji)
  • P601 Wejście Cyfrowe DI02 – NO FUNCTION  (Bez funkcji)
  • P602 Wejście Cyfrowe DI03 – ENABLE/RAPID STOP (Awaryjny przycisk bezpieczeństwa)
  • P603 Wejście Cyfrowe DI04 – NO FUNCTION  (Bez funkcji)
  • P604 Wejście Cyfrowe DI05 – NO FUNCTION  (Bez funkcji)
  • P608 Wejście Cyfrowe DI00 – /CONTROLLER INHIBIT  (Blokada)

Fieldbus Timeout Response

Odpowiedź falownika na utratę Profibus.

  • P819 Fieldbus Timeout Delay – Uwaga! W przypadku PROFIBUS-DP ustawienie przedziału czasowego odbywa się za pośrednictwem DP-Master.
  • P831 Response FIELDBUS TIMEOUT – RAPID STOP /WARNING – (Odpowiedź falownika – Szybkie Zatrzymanie)

Rapid Stop Ramp

Wprowadzę rampę szybkiego zatrzymania.Muszę zmienić parametr P136 T13 Stop Ramp.

Funkcja szybkiego zatrzymania niezależnego od Profibus realizowana jest poprzez podłączenie terminala DI03 bezpośrednio z przyciskiem awaryjnego wyłączenia. W trybie normalnym przycisk awaryjnego zatrzymania jest zamknięty, dzięki czemu wejście binarne DI03 ma poziom wysoki +24V, a falownik jest włączony. Napęd jest teraz sterowany przez Profibus za pomocą słowa kontrolnego. W sytuacji zatrzymania awaryjnego aktywowany jest przycisk awaryjny, wejście binarne DI03 odbiera sygnał niski 0V i tym samym aktywuje funkcję szybkiego zatrzymania. Napęd zatrzyma się teraz w ciągu 200 ms, chociaż Profibus przekazuje inne polecenie sterowania za pomocą słowa sterującego.

Następnie należy wykonać pełną procedure Startup, a w niej podać dokładnie parametry silnika itd.

Wszystkie parametry dla tej aplikacji zostały teraz przypisane, mogę zająć się napisaniem programu w środowisku SIEMENS STEP 7.

3. SIEMENS SIMATIC STEP 7.

Hardware i Software falownika już mam za sobą, teraz przyszła pora zaprogramować sterownik PLC tak aby można było się połączyć z falownikiem i móc sterować silnikiem dzięki danym procesowym. W środowisku SIEMENS STEP 7 v5.6 do istniejącego już projektu (ten z diagnostyki sieci Profibus) dodam kilka FC (funkcji) oraz DB (bloków danych). Nie będę omawiał konfiguracji sprzętowej tylko przejdę bezpośrednio do kodu.

Cały proces podzielę na 3 funkcje i wywołam je w czwartej funkcji,  następnie tę funkcję wywołam w bloku głównym OB1. Do pełni szczęścia dodam 3 bloki danych w których będą przechowywane wszystkie informacje przetwarzane w wyżej wymienionych funkcjach.

  • FC1 –  SEW INVERTER DATA READ / WRITE- funkcja ta odpowiedzialna jest za “czytanie” aktualnych wartości oraz “pisanie” wartości zadanych danych procesowych.
  • FC2 – SEW INVERTER CONTROL – funkcja odpowiedzialna za kontrolę falownika ze stopnia HMI
  • FC3 – SEW INVERTER FAULT EVALUATION – odpowiedzialna za odczyt stanu falownika oraz ocenę błędów falownika.
  • DB1 – SEW INVERTER PO & PI – blok danych zawiera wszystkie dane procesowe potrzebne do kontroli falownika.
  • DB2 – SEW HMI BUTTONS – blok danych zawiera dane potrzebne do kontroli z poziomu HMI
  • DB3 – SEW INVERTER STATUS – blok danych zawiera dane na temat statusu falownika.

OK, zacznę od stworzenia bloku danych DB1:

Blok zawiera wszystkie dane procesowe:

  • PI1 – Status Word 1  – Słowo Statusu 1
  • PI2 – Speed Actual Value – Aktualna Prędkość
  • PI3 – Current Actual Value – Aktualny Prąd Wyjściowy
  • PO1 – Control Word 1 – Słowo Kontrolne 1
  • PO2 – Speed – Prędkość Zadana
  • PO3 – Ramp – Rampa Prędkości

Teraz kolej na DB2:

DB2 zawiera zmienne typu BOOL potrzebne do kontroli falownika z poziomu HMI.

  • SEW INVERTER PB – przycisk uruchamiający ekran kontroli falownika
  • START – przycisk startu na ekranie HMI
  • STOP – przycisk stopu na ekranie HMI
  • ENABLE – przycisk enable na ekranie HMI
  • CONTACTOR 15K9 – Bit sterujący stycznikiem 15K9

Na koniec ostatni blok danych, DB3:

DB3 zawiera zmienne typu BOOL potrzebne to identyfikacji statusu falownika.

  • READY – Falownik gotowy do pracy
  • NOT READY – Falownik Nie gotowy do pracy
  • FAULT – Błąd falownika
  • WARNING – Ostrzeżenie falownika
  • RUNNING – Włączone wyjście falownika.

Przejdę teraz do programowania pierwszej funkcji, FC1 jest odpowiedzialna za “czytanie” aktualnych wartości oraz “pisanie” wartości zadanych, danych procesowych.

FC1:

W funkcji FC1 w oknie interfejsu funkcji, zdefiniowałem wejściowe, wyjściowe oraz tymczasowe parametry funkcji.

Parametrami wejściowymi typu WORD są:

  • PI_Data_Word_1
  • PI_Data_Word_2
  • PI_Data_Word_3

Parametrami wyjściowymi typu WORD są:

  • PO_Data_Word_1
  • PO_Data_Word_2
  • PO_Data_Word_3

A tymczasowymi parametrami typu WORD są:

  • temp_PI_Data_Word_2
  • temp_PI_Data_Word_3
  • temp_PO_Data_Word_2

W Network 1, PI_Data_Word_1 (Słowo Statusu 1) jest przeniesione do DB1.DBW0 (bloku danych DB1)

W Network 2, PI_Data_Word_2 zwracaja skalowaną wartość bieżącą prędkości (1 = 0,2 / min). W związku z tym wartość aktualna prędkości jest dzielona przez 5, aby pokazać aktualną prędkość 1 = 1 / min. Następnie wynik zostaje przeniesiony do DB1.DBW2

Network 3, PI_Data_Word_3 zwraca skalowaną wartość aktywnego prądu  rzeczywistego (1 = 0,1%). W związku z tym aktywna bieżąca wartość rzeczywista jest dzielona przez 10, aby pokazać aktualną wartość prądu rzeczywistego (1 = 1%). Następnie wartość jest przenoszona do  DB1.DBW4

Network 4, to już “przekazywanie” wartości zadanych do falownika. Słowo kontrolne 1 zostało przeniesione z bloku danych DB1 (DB1.DBW6) do parametru wyjsciowego funkcji – PO_Data_Word_1.

Network 5, Wartość prędkości zadanej (1 / min) jest przeniesiona z DB1.DBW8 i pomnożona przez 5, a następnie przeniesiona do PO_Data_Word_2 (0,2 / min)

Network 6, na koniec Wartość zadana rampy (1 = 1 ms) zostaje przeniesiona do PO_Data_Word_3.

W funkcji FC2 jest zaprogramowana kontrola falownika ze stopnia panelu HMI oraz kontrola stycznika 15K9.

FC2:

Network1, Control Word 1 – START – Słowo Kontrolne 1 – Zezwolenie na Star.

Gdy stan falownika READY = 1  i falownik ma zezwolenie ENABLE = 1 i naciśnięto przycisk START PB na panelu HMI i Awaryjny przycisk Emergency PB nie jest aktywowany, wtedy przenieś 6 do w bloku danych DB1 (DB1.DBW6).

Network 2, Control Word 1 – STOP – Słowo Kontrolne 1 – Stop z Rampą.

Po naciśnięciu przycisku STOP PB na panelu HMI lub falownik nie jest gotowy lub falownik jest wstrzymany następuje przeniesienie wartości 2 bloku danych DB1 (DB1.DBW6)

Network 3, Control Word 1 – STOP – Słowo Kontrolne 1 – Stop Awaryjny.

Gdy wciśnięty jest przycisk zatrzymania awaryjnego lub stan falownika SEW to – FAULT lub „Ekran SEW INVERTER ” zostaje zakończony, 0 zostaje przeniesione do bloku danych DB1

(DB1.DBW6)

Network 4, kontrola stycznika 15K9.

Po wciśnięciu „SEW INVERTER” z ekranu głównego HMI i Przycisk Awaryjny nie jest wciśnięty, następuje uruchomienie timera na czas 2s – po upływie czasu stycznik jest wysterowany.. Stycznik 3-fazowy 15K9 jest resetowany, gdy Przycisk Awaryjny  jest wciśnięty lub „SEW INWERTER” Ekran jest wyłączony.

Network 5, Przypisanie wyjścia dla stycznika 3-fazowego 15K9.

Network 6, Zezwól / Zatrzymaj Falownik.

Gdy wciśnięto przycisk „ENABLE” na ekranie HMI, aktywuj wyjście Q5.0 i tym samym aktywuj

(NO ENABLE) DI00 falownika SEW.

No i ostatnia już funkcja, FC3, odpowiedzialna za odczyt stanu falownika oraz ocenę błędów falownika

FC3:

Ocena błędu falownika SEW na podstawie Słowa Statusowego 1 – DB1.DBW0Słowo Statusowe 1 zawierające dwa bajty Bajt 0 i Bajt 1.Bajt 0 zawieraja – Status falownika lub Kod błędu:Kiedy bit 5 bajtu 1 jest = 0, wtedy bajt 0 zawiera status falownika:

np.01: 24 V mode02: Controler Inhibititp.Kiedy bit 5 bajtu 1 jest = 1, wówczas bajt 0 zawiera kod błędu:

np.01: Overcurrent14: EncoderItp.

Bajt 1 jest fabrycznie zdefiniowany:Bit 0: Włączenie wyjścia falownika – Output stage enableBit 1: Falownik gotowy do pracy – Inverter ready for operationBit 2: dane PO włączone – PO data enabledBit 3: Aktywny zestaw generatorów ramp – Active ramp generator setBit 4: Aktywny zestaw parametrów – Active parameter setBit 5: Błąd / ostrzeżenie – Fault/WarningBit 6: Wyłącznik krańcowy Prawy aktywny – Limit switch CW activeBit 7: Wyłącznik krańcowy Lewy aktywny – Limit switch CCW active

A więc w Network 1, Falownik gotowy do pracy.

Gdy Bit 1 Słowa Statusowego = 1 i Bit 5 = 0, to Status falownika = READY (GOTOWY).

Network 2, Falownik Nie gotowy do pracy.

Gdy bit 1 Słowa Statusowego wynosi = 0, a bit 5 = 0, to status falownika SEW = NOT READY (NIE GOTOWY).

Network 3, Błąd falownika.

Gdy bit 1 Słowa Statusowego wynosi = 0, a bit 5 = 1, to status falownika SEW = FAULT (BŁĄD).

Network 4, Ostrzeżenie falownika.

Gdy bit 1 Słowa Statusowego wynosi = 1, a bit 5 = 1, to status falownika SEW = WARNING (OSTRZEŻENIE).

Network 5,

Gdy bit 0 Słowa Statusowego  wynosi = 1, wówczas włączane jest wyjście falownika SEW.

Teraz wszystkie te trzy funkcje wywołam w jednym miejscu w funkcji FC4:

W kolejności wywołuje kolejne funkcje FC1, FC2 oraz FC3.

W Network 1 do parametrów wejsciowych i wyjsciowych funkcji FC1 należy przypisać adresy peryferalne falownika które zostały wcześniej skonfigurowane podczas konfiguracji sprzętowej całego projektu.

  • PIW272 – Peripheral Input Word 272 = PI_Data_Word_1
  • PIW274 – Peripheral Input Word 274 = PI_Data_Word_2
  • PIW276 – Peripheral Input Word 276 = PI_Data_Word_3
  • PQW272 – Peripheral Output Word 272 = PO_Data_Word_1
  • PQW274 – Peripheral Output Word 274 = PO_Data_Word_2
  • PQW276 – Peripheral Output Word 276 = PO_Data_Word_3

Widok na OB1 i wywołanie funkcji FC4 – SEW INVERTER

To by było na tyle programowania w STEP 7.

4. Wizualizacja w WinnCC Flexible 2008

Teraz już ostatnia prosta i zaprogramowanie panelu HMI w WinCC Flexible 2008, aby móc kontrolować falownik SEW.

Dzięki panelowi HMI w łatwy sposób można kontrolować obroty silnika oraz jego przyspieszenie.

W najprostszy sposób zaprogramowałem panel HMI tak aby można było kontrolować falownik.

Każde pole wejściowe lub wyjściowe, przycisk, lampka kontrolna na panelu HMI jest odpowiednio przypisane do danych z bloków danych wykorzystanych w programie Step 7.

  • Pole I/O typu output – Actual Speed jest przypisane do DB1.DBW2
  • Pole I/O typu output – Active Current  jest przypisane do DB1.DBW4
  • Pole I/O typu input – Set Speed jest przypisane do DB1.DBW8
  • Pole I/O typu input – Ramp jest przypisane do DB1.DBW10
  • Pole Tekstowe – Emergency Stop Activated Jest tylko widoczne gdy E-Stop I1.5 jest aktywowany
  • Przycisk Stop PB – Setuje bit DB2.DBX0.2
  • Przycisk Start PB – Setuje bit DB2.DBX0.1
  • Przycisk Enable – Setuje bit DB2.DBX0.3
  • Back PB – Aktywuje Home Screen
  • Zielona Lampa z napisem Running jest widoczna gdy bit DB3.DBX0.4 jest aktywny
  • Czerwona Lampa z napisem Fault jest widoczna gdy bit DB3.DBX0.2 jest aktywny.

5. Podsumowanie

Stawiam pierwsze kroki w programowaniu sterowników PLC i cały czas próbuje pogłębiać swoją wiedzę na ten temat. Na tym przykładzie pokazałem Ci jak w łatwy sposób można przesyłać i odbierać dane procesowe pomiędzy sterowniikiem a urządzeniem peryferalnym. Sterowanie falownikiem za pomocą trzech słów danych procesowych pozwala na stworzenie prostych jak i bardzo wydajnych i rozbudowanych aplikacji, ponieważ komunikacja pomiędzy sterownikiem PLC a urządzeniem odbywa się za pomocą sieci Profibus.

Dziękuję za poświęcony czas. Mam nadzieję że choć trochę zainteresowałem Cię tym artykułem.

 Pozdrawiam,
Maciej Pala

Artykuł nagrodzony!

Artykuł został zgłoszony jako Praca Konkursowa do Konkursu iAutomatyka w miesiącu Maj 2018 i zdobył poniższą nagrodę:

Drukarka Rhino™ 4200 firmy DYMO

Pozwala wykonać zadania szybko i dokładnie. Łatwa nawigacja dzięki klawiaturze QWERTY klawisze skrótów umożliwiają tworzenie i formatowanie owijek na przewody/kable, flag, kodów kreskowych Code 39 i Code 128, etykiet o stałej długości, modułowych i innych elementów.

Ilość : 1 sztuka

Nagrodę dostarcza iAutomatyka.pl – innowacyjny portal z branży automatyki i robotyki budowany przez społeczność z branży. Katalog firm, produktów, usług, wydarzeń i szkoleń. Oferty pracy dla automatyków. Baza Automatyków. Profesjonalne recenzje i testy urządzeń. Aktualności, baza merytorycznej wiedzy oraz projekt skierowany specjalnie do integratorów. https://iautomatyka.pl/projekt-iautomatyka/


🎁 Zwycięzca: Maciej Pala

Praca konkursowa: Sterowanie falownikiem SEW za pomocą 3 danych procesowych w sieci PROFIBUS



Utworzono: / Kategoria: , , ,
  • Autor: Maciej Pala
  • Z wykształcenia Technik Elektronik Automatyki Przemysłowej, od 2005 bezustannie pracujący w pełni zautomatyzowanym magazynie wysokiego składowania jako technik automatyk. Zafascynowany automatyką i wszystkim, co z nią związane. Od 2017 roku autor wielu artykułów związanych z automatyka i nie tylko na portalu iAutomatyka.pl. Od niedawna autor foto bloga the_automation_technician na Instagramie.
  • Profil Autora

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