EMM-40A-B
Количка
W wielu aplikacjach przemysłowych wymagane jest jedynie proste i powtarzalne pozycjonowanie osi, bez potrzeby realizacji złożonych profili ruchu, interpolacji wieloosiowej czy zaawansowanych funkcji Motion Control.
Sterowniki Siemens S7-1200 oferują możliwość generowania sygnałów impulsowych (PTO – Pulse Train Output), które mogą być wykorzystane do sterowania pozycją serwonapędu pracującego w trybie impulsowym. Do takiego pozycjonowania wystarczy podstawowa licencja TIAPortal.
W serwonapędach Elmatic impulsowe sterowanie pozycją jest podstawowym trybem sterowania. Liczba impulsów determinuje zadaną pozycję a częstotliwość odpowiada za prędkość ruchu.
W artykule pokaże, jak w praktyce uruchomić pozycjonowanie serwa Elmatic za pomocą wyjść PTO sterownika S7-1200, począwszy od podstawowych zasad działania, poprzez konfigurację napędu i sterownika, aż po wykonanie pierwszego ruchu pozycjonującego oraz omówienie typowych ograniczeń tego rozwiązania.
Sterowanie serwonapędami Elmatic za pomocą sygnałów impulsowych jest podstawową metodą zadawania ruchu, wyróżniamy 3 rodzaje obsługiwanego sygnału:
| Forma sygnału impulsu | Dodatnia logika | Ujemna logika | ||
| Przód | Tył | Przód | Tył | |
| Kierunek + krok | ![]() |
![]() |
![]() |
![]() |
| Faza A i faza B impuls prostokątny | ![]() |
![]() |
||
| CW+CCW | ![]() |
![]() |
||
![]() |
![]() |
|||
Potocznie nazywamy sygnałem jedno-impulsowym, ponieważ tylko jedna linia sygnałowa wysyła impulsy. Sygnał impulsowy (krok) dostarcza serwosterownikowi dane nt. kąta obrotu oraz szybkości obrotu (częstotliwość sygnału), natomiast drugi sygnał wejściowy (kierunek) determinuje kierunek obrotu.

Ten rodzaj sygnału najczęściej spotykamy w enkoderach. Występują dwa sygnały impulsowe przesunięte w fazie o 90°. Stosuje się go w aplikacjach, gdzie serwonapęd ma pełnić rolę osi podążającej za osią nadrzędną (w tym wypadku enkoderem). Kierunek obrotu określa się poprzez pierwszeństwo narastania impulsów (A-B obrót do przodu, B-A obrót do tyłu).

Tutaj natomiast występują dwa źródła sygnału impulsowego. W zależności od kierunku obrotu możemy podawać sygnał impulsowy na linię CW (obrót do przodu) lub CCW (obrót do tyłu).

W dalszych części skupimy się na podłączeniu za pomocą sygnału krok + kierunek.
W naszym przykładzie użyjemy S7-1200, który ma wbudowane wyjścia szybkie do 100kHz i serwonapędu Elmatic 400W, który składa się z silnika EMM i sterownika EMD.
Początkowo rozpoczniemy od podłączenia serwonapędu wg. schematu poniżej.

Następnie należy przygotować złącze sterowania CN1. Będziemy wykorzystywać sterowanie pozycją za pomocą sygnału krok + kierunek (schemat wejść/wyjść). W celu umożliwienia ruchu należy podłączyć +24V do wejścia 31 i 0V do wejścia 44. Przejście z trybu postoju (rdy) do ruchu (run) następuje przez wejście 19. Dodatkowo przyda się potwierdzenie gotowości serwonapędu, które domyślnie jest przypisane pod wyjście 1.
W PLC S7-1200 użyjemy wyjścia Q0.0 do sygnału impulsowego a wyjścia Q0.1 do zmiany kierunku. Dodatkowo ważne jest zastosowanie oporników minimum 2kOhm w celu ograniczenia prądu wchodzącego do optoizolatora serwosterownika, aby zmniejszyć napięcie z 24VDC do 5VDC. Schemat podłączenia PLC <-> serwo wygląda jak poniżej.

Wyjścia w serwonapędzie działają jako NPN, więc należy pamiętać aby do 1M w S7-1200 podłączyć 24VDC.
W rozwiązaniu Siemens podobnie jak w innych sterownikach korzystających z funkcji Motion mamy możliwość konfiguracji osi napędowej, dzięki czemu będziemy mogli korzystać z gotowych bloków do sterowania napędem, co znacznie ułatwia proces. W Project Tree dodajemy nowy Technology Obcject. W zakładce Motion Control znajdziemy obiekt TO_PositioningAxis.
Będziemy sterować sygnałem PTO, jako że nasz ruch będzie obrotowy to w Position Units wybierzmy °.
W konfiguracji wejść/wyjść musimy wybrać sygnał krok+kierunek, czyli PTO (pulse A and direction B). Przypisujemy wyjście Q0.0 i Q0.1 pod odpowiednie sygnały. Dodatkowo jak wspominałem w wcześniejszej sekcji będziemy potrzebować sygnału S-ON i warto też dodać sygnał zwrotny S-RDY informujący o gotowości serwa do ruchu. W naszej konfiguracji Q0.2 (Axis_1_DriveEnable) i I0.0 (Axis_1_DriveReady).
Kolejnym ważnym krokiem będzie skonfigurowanie ilości impulsów na obrót. Tutaj musimy brać pod uwagę ustawienia w naszym serwosterowniku. W parametrach P04-07 i P04-09 znajdziemy odpowiednio licznik i mianownik elektronicznej przekładni. Domyślnie licznik odpowiada rozdzielczości enkodera absolutnego (23bitowy = 2^23 = 8388608), a mianownik rozdzielczość osi – domyślnie 10000 impulsów.
Warto tutaj zastanowić się nad rozdzielczością naszego ruchu. Wykonujemy ruch obrotowy w zakresie 0-360°. Wystarczająca będzie rozdzielczość rzędu 0,1°. Dlatego warto zmodyfikować ustawienia przekładni, tak aby 3600 impulsów było równoznaczne pełnemu obrotowi.
Taka zmiana jest też istotna z innego faktu. Otóż mamy ograniczenie częstotliwości wyjścia PTO do 100 kHz. Jak można się domyślić prędkość ruchu będzie zależeć właśnie od częstotliwości sygnału. Przy początkowych ustawieniach (10000 impulsów na obrót) maksymalna prędkość jaką możemy uzyskać to 600 obr/min. Przy prędkości znamionowej serwa 3000 obr/min jest to spore ograniczenie (oczywiście dla części aplikacji będzie wystarczająca). Zmniejszając liczbę impulsów, tracimy na rozdzielczości ale zyskujemy prędkość, która przy 3600 impulsach będzie 1666 obr/min.
W konfiguracji Dynamics ograniczymy sobie prędkość do 1500 obr/min. Minimalna prędkość będzie 6 obr/min a rampę przyśpieszania i hamowania ograniczymy do 0,5 s.
W konfiguracji mamy jeszcze opcję bazowania, ale w tym przykładzie nie będziemy wykorzystywać tej opcji.
Przed rozpoczęciem pisania programu do sterowania serwem warto sprawdzić czy jest poprawnie skonfigurowane. Mamy dostępne narzędzie Commisioning dostępne w dodanej osi, które pozwoli na wykonanie ruchów testowych (JOG).
Pisanie programu opiera się o gotowe bloki do sterowania napędem. Jeśli mieliście wcześniej do czynienia z standardem Motion Control PLCOpen to rozwiązania będą znajome. Aby aktywować pracę Techonology Block (Axis_1) potrzebujemy MC_Power. Blok jest uruchamiany dopiero po podaniu wartości TRUE na Execute, więc nie będzie wymagany styk przed wywołaniem MC_Power. Bez uruchomionego MC_Power pozostałe bloki sterowania osią nie zadziałają.
MC_Reset pozwoli na potwierdzenie błędów lub ostrzeżeń w bloku technologicznym. Natomiast MC_Home będzie prostą metodą bazowania. Wraz z wywołaniem bloku nadpiszemy aktualną pozycję na 0.

MC_Halt będzie służyć do zatrzymania napędu. Zatrzymanie odbywa się zgodnie z parametrami określonymi w konfiguracji osi.
Sterowanie pozycją wykonamy za pomocą MC_MoveRelative. Oprócz standardowej zmiennej „bool” odpowiadającej za rozpoczęcie pozycjonowania będą niezbędne zmienne typu „real”, które będą definiować pozycję i prędkość ruchu.
W ten sposób mamy wszystkie niezbędne komponenty do wykonania ruchu. Wgrajmy program i przetestujmy działanie w trybie Online.
Oczywiście był to tylko przedsmak możliwości serwonapędów Elmatic. Sterowanie pozycją za pomocą wyjść impulsowych (PTO) sterownika Siemens S7-1200 jest szczególnie przydatne w prostych aplikacjach i modernizacjach maszyn, gdzie nie ma potrzeby używania zaawansowanego motion control. Prosta konfiguracja i kilka bloków funkcyjnych wystarczyły, aby wprawić silnik w ruch i móc precyzyjnie sterować pozycją.
Jeśli chcesz dowiedzieć się więcej o naszych serwonapędach odwiedź Akademię Serwonapędów, a otrzymasz solidną dawkę wiedzy o:
Zachęcamy również do zapoznania się z naszą ofertą serwonapędów Unitronics i serwonapędów Elmatic.
Имате въпроси? Имате нужда от съвет? Обадете се или ни пишете!