Programowanie sterowników EM2RS/CS2RS – uruchomienie napędu

12 lipca 2022 0

Autor:

Uruchomienie napędu EM2RS/CS2RS w trybie obsługi wejść/wyjść.

Dzięki zastosowaniu sterowników serii 2RS, zrealizujemy proste systemy pozycjonowania za pomocą samego sterownika silnika krokowego. Pozwala to znacznie uprościć całą szafę sterowniczą maszyny, unikając tym samym zastosowania zazwyczaj drogiego sterownika PLC, lub zewnętrznego kontrolera ruchu. Do zrealizowania takiego układu wystarczy zasilacz, sterownik silnika oraz kilka przycisków. Możemy za pomocą tego rozwiązania sterować windami, podajnikami, zderzakami, transporterami taśmowymi oraz wieloma innymi urządzeniami.

W tym artykule przybliżę kwestę uruchomienia napędów krokowych oraz easy servo Leadshine w trybie obsługi za pomocą wejść cyfrowych. Będzie on użyteczny, w aplikacjach, gdzie potrzebujemy zaprogramować jedną lub kilka prędkości progowych wybieranych za pomocą przycisków. Możemy również w łatwy sposób zaprogramować pozycjonowanie silnika dla jednej osi. Za pomocą przyjaznej dla użytkownika tabeli ścieżek, zaprogramujemy aż 16 niezależnych, lub zależnych od siebie ścieżek przejazdu.

W poniższym poradniku posłużę się napędem CS2RS, dla EM2RS sytuacja wygląda praktycznie tak samo. Na potrzeby tego poradnika zbudowałem układ testowy, widoczny na poniższych zdjęciach.

 

Sposób podłączenia wejść cyfrowych:

 

Podłączenie napędu i ścieżki w trybie prędkościowym:

1. Podłączamy sterownik do PC za pomocą dedykowanego kabla (1.4.4-0409505-B3). Jeśli PC nie jest wyposażony w port COM, możemy użyć konwertera USB/RS232
2. Podłączamy zasilanie sterownika. Uruchomi się on w trybie błędu – nie wykryje silnika. Nie przejmujmy się tym na tym etapie.
3. Uruchamiamy program Leadshine Motion Studio, najpierw przechodzimy do zakładki „Parameters list”.

 

 

Wybieramy tutaj z listy parametrów Pr5. Extended Setup i ustawiamy prąd silnika w spoczynku Pr5.00. Prąd należy dobrać do używanego aktualnie silnika, ustawiany jest w jednostkach 0.1 A, więc dla silnika o prądzie nominalnym 5A, ustawiamy wartość 50.

Tak samo postępujemy w przypadku prądu postojowego – Pr5.01.

Po zmianach parametrów klikamy kolejno 2 ikony, „Write to driver” oraz „Save to driver”

4. Teraz możemy podłączyć silnik, odłączamy więc napięcie zasilania, podpinamy silnik. Sterownik powinien już uruchomić się normalnie, nie sygnalizując błędów, świeci zielona dioda.

5. Zmieniamy sposób sterowania,
Pr8.26 na wartość 0 – spowoduje to wywołanie ścieżki pracy silnika, przy pomocy wejść cyfrowych. W tym trybie, możemy ustawić do 16 ścieżek za pomocą kombinacji wejść cyfrowych. Kombinacje wejść cyfrowych są opisane w instrukcji sterownika na ostatniej stronie. Wyzwolenie pracy następuje za pomocą zdefiniowanego wejścia CTRG. Sekwencja uruchomienia dla tego trybu wygląda następująco:
– Załączamy kombinację wejść wg. Tabeli z instrukcji obsługi. Np.

Aby wywołać ścieżkę 6, podajemy stan wysoki na wejście DI2 oraz DI3 (do których przypisane są odpowiednie funkcje w zakładce wejść, ale o tym później)

Sterownik w tym momencie jest gotów do akcji, „wie” którą ścieżkę ma wywołać. W tym momencie załączenie wejścia 5 (CTRG) spowoduje wykonanie zadanej ścieżki.

Ten sposób sterowania jest dobry, kiedy sterujemy wejściami sterownika za pomocą innego urządzenia, np. sterownika PLC z wyjściami przekaźnikowymi. Wtedy możemy najpierw wybrać ścieżkę za pomocą 4 wyjść cyfrowych, a następnie wyzwolić wejściem CTRG. Można również wykorzystać przełącznik wielopozycyjny, aby mieć możliwość wyboru więcej niż 4 ścieżek.

Pr8.26 na wartość 2 – w tym przypadku wyzwalanie ścieżki następuje w momencie aktywacji wejścia cyfrowego. Nie używamy tutaj wejścia CTRG. Jest to łatwiejszy sposób sterowania, ale w praktyce mamy do dyspozycji programowanie tylko 4 ścieżek ruchu. Ścieżki, które możemy wywołać w tym trybie, przedstawiam poniżej w tabeli.

Przykładowo po wyzwoleniu wejścia cyfrowego DI4 (ADD3) nastąpi wywołanie ścieżki nr4.

W tym krótkim poradniku posłużę się tym sposobem, podłączając do sterownika 4 przyciski monostabilne.

6. Następnie przechodzimy do zakładki definicji wejść sterownika:

Rozwijając zakładki „control” wybieramy funkcję wejść sterownika.

Wejścia od SI1 do SI4 ustawiłem na wybór ścieżki „Path (0-3)—PR(ADD0-3) Po aktywacji każdego z wejść, program wykona przypisaną do niego ścieżkę.

W tym przykładzie zdefiniowałem także wejście stopu (STD) pod wejściem 5 oraz Servo ON pod wejściem 7. Po aktywacji wejścia 5, silnik zatrzyma się.

Aby nie musieć podawać sygnału servo on, zmieniłem zakładkę Polarity, dla wejścia 7, na Normally Closed – wejście jest aktywny, dopóki nie podamy nań sygnału. Po podaniu sygnału na wejście 7, nastąpi zatrzymanie napędu.

Po zdefiniowaniu wejść, klikamy ok, oraz potwierdzamy wyskakujący komunikat.

7. Przechodzimy do zakładki „Motion” > „PTP” i dalej od razu do okna Path Parameters. W tej prostej konfiguracji zostawiamy okno Control Parameters domyślnie. Nie będę tutaj opisywał procedury bazowania silnika.

Do dyspozycji w wybranym trybie mamy w rzeczywistości możliwość wyboru 4 konfiguracji ścieżek. Mogą one być niezależne, bądź zależne od siebie oraz innych ścieżek. W tym przykładzie opiszę je jako 3 niezależne ścieżki oraz jedną zależną od innej.

Poniżej opis każdego z edytowalnych parametrów ścieżki

1. Parametry ścieżki – to okno ma najwięcej możliwości wyboru, definiujemy w nim , jak zachowa się silnik w przypadku wybrania tej ścieżki, oraz jak na osi współrzędnych będzie zapisywany ruch.

W tym przykładzie wybieram tryb prędkościowy. W tym trybie silnik będzie kręcił się z określoną prędkością, bez określonej pozycji.
2. Pozycja. Dla ruchów pozycjonowanych (local position) możemy określić, na jaką pozycję ma jechać silnik. W drugim oknie wybieramy, czy definiujemy ruch względny (przyrostowy), czy absolutny (określany względem krańcówek bazujących, bądź pozycji początkowej silnika przy podłączeniu zasilania. Przy trybie prędkościowym (speed mode) wpisujemy tutaj 0.
3. Prędkość, z jaką będzie się poruszał silnik.
4. Rampa rozpędzania silnika
5. Rampa hamowania silnika
6. Czas pauzy – dla kilku połączonych ze sobą ścieżek w trybie pozycji, jest to czas zatrzymania silnika pomiędzy jedną a drugą ścieżką. W trybie prędkościowym jest to czas trwania obrotów. W omawianym przykładzie taka sytuacja występuję dla ścieżki nr4: Po aktywacji wejścia silnik będzie kręcił się z prędkością 600 obr/min przez 10s. Wartość ta jest wyrażona w milisekundach. Wpisując 0, silnik będzie kręcił się w nieskończoność.

Przeskoczenie do kolejnej ścieżki jest opcją, która umożliwia tworzenie skomplikowanych sekwencji ruchu:

Z taką sytuacją spotkamy się na poniższym zrzucie ekranu: Po włączeniu pracy ścieżki nr 2 silnik wykona 50 000 kroków (5 obrotów przy rozdzielczości 10 000 kroków/obrót), z prędkością 500 obr/min, odczeka czas 1s (1000ms). Następnie wykona ścieżkę nr3, czyli obróci się w przeciwnym kierunku o – 10 000 kroków (-1 obrót), z prędkością 50 obr/min

Wszystkie ścieżki wyglądają w ten sposób:

 

Mamy tutaj możliwość wywołania 4 ścieżek silnika, za pomocą 4 przycisków z czego jedna (nr2) po zakończeniu, przechodzi do ścieżki 3. Czerwone numery odpowiadają przyciskom, wywołującym ścieżki silnika.

Pozycjonowanie bezwzględne (absolutne) oraz względne (inkrementalne) napędu serii EM2RS lub CS2RS.

Sterowniki CS2/EM2 mogą pracować w trybie pozycjonowania absolutnego. To znaczy, że po „zbazowaniu” napędu, możemy określić pozycję na jego osi, do której napęd będzie podążał. Napęd po zbazowaniu zapamiętuje pozycje czujnika bazującego i od niej liczy drogę na osi.

Do wyjaśnienia tego zagadnienia posłużyłem się stanowiskiem testowym zbudowanym ze stołu liniowego o skoku 600mm.

Ponieważ w tym przypadku mamy do czynienia z napędem liniowym, ustawimy jednostki tak, aby wygodnie przeliczało się impulsy (ilość impulsów na obrót silnika) na ruch liniowy. W tym celu wchodzimy do okna konfiguracji parametrów:

W tym przykładzie wpisałem 500 imp/obrót silnika, gdyż będzie to bardzo łatwo przeliczać na ruch liniowy. Stół liniowy, który jest wykorzystany w tym przykładzie zbudowany jest na śrubie tocznej o skoku 5mm. Silnik połączony jest sprzęgłem ze śrubą, więc obroty przełożone są 1:1 na śrubę.

500 impulsów dzielę przez skok śruby 5mm i wychodzi mi intuicyjna wartość 100 imp/mm czyli 1 impuls = 0.01 mm na osi liniowej.

Aby układ działał poprawnie, przed wykonaniem ruchu musimy zrealizować jego bazowanie. Oznacza to, że po załączeniu zasilania, lub wyzwoleniu wejścia przeznaczonego na bazowanie, silnik rozpocznie przejazd w stronę czujnika i zatrzyma się, gdy czujnik zostanie załączony. W tym momencie układ jest gotowy do dalszej pracy.

W tym przykładzie posłużymy się czujnikiem indukcyjnym NPN w funkcji NO (normalnie otwarty), sposób podłączenia widzimy na rysunku poniżej. Wykorzystujemy wejście 6 (DI6).

Następnie przechodzimy do zakładki IO Setting i wybieramy z listy wejście bazowania [27] – tutaj będzie podłączony czujnik.

Od razu definiuję też przycisk wymuszenia bazowania – po jego wciśnięciu nastąpi proces bazowania.

 

Następnie przechodzimy do parametrów sterowania i konfigurujemy kilka opcji.

1. CTRG – wyzwalanie zboczem narastającym
2. Bazowanie po załączeniu zasilania – po zaznaczeniu tej opcji bazowanie wykona się automatycznie, po podaniu napięcia zasilania na sterownik. Używajmy tej opcji rozważnie, gdyż przy włączonej, maszyna zacznie się ruszać, natychmiast po włączeniu zasilania.
3. Kierunek bazowania – maszyna w tym przypadku bazuje się w kierunku na (-), jeśli chcemy bazować na (+), zaznaczamy „Homing Direction (Positive)
4. Sposób wyzwalania bazowania:
3 – bazowanie momentowe
1 – na krańcówkę Bazującą,
0 – na krańcówkę limitową.
Opcja 0 jest bardziej uniwersalna, gdyż możemy użyć tej samej krańcówki jako limitowa i bazująca. Aby tak zrobić, zmieniamy typ wejścia w konfiguracji wejść na:

Bazowanie na moment działa w taki sposób, że silnik po napotkaniu obciążenia zdefiniowanego w par. 8.20 uzna to za zderzak i wykona procedurę bazowania.

5. Prędkość bazowania – tutaj dobieramy rozsądną prędkość dla naszego układu. Pamiętajmy, że wyrażona jest ona w obr/min, co może skutkować bardzo szybkimi posuwami, jeśli stosujemy silnik w napędzie na pasie zębatym lub śrubie kulowej z dużym skokiem.
6. Prędkość dokładnego bazowania – warto ustawić jak najniższą akceptowalną wartość- ma to wpływ na powtarzalność bazowania
7. Rampa hamowania przy bazowaniu

W momencie, gdy mamy skonfigurowany napęd i bazowanie możemy przejść do konfiguracji ścieżek. W tym celu przechodzimy do zakładki „path parameters” i wybieramy ścieżkę 1 (ścieżki przypisane jak w poprzednio omawianym trybie)

W trybie ścieżki skupimy się na pozycjonowaniu. Mamy tutaj do wyboru pozycjonowanie absolutne (absolute) i względne (relative command) i na nich się skupimy.

Zadanie pozycji absolutnej oznacza , że po wyzwoleniu tej ścieżki silnik przejedzie na zadaną pozycję, niezależnie od swojego aktualnego położenia. W typ przypadku jest to pozycja 10000 imp (100mm)

Ustalamy pozycje i pozostałe parametry:

Obrazuje to poniższe zdjęcie

 

Po ponownej aktywacji tego przycisku oczywiście nic się nie stanie, dopóki oś nie przejedzie na inną pozycję.

Aktualną pozycję można sprawdzić w zakładce „Manual”. Po wciśnięciu kafelki „refresh” w oknie „Command Position Pulse” wyświetli się nam aktualna zadana pozycja, a w przypadku siników z enkoderami również pozycja silnika (Motor Position Pulse). Ponadto w tym oknie możemy wyzwalać wszystkie ścieżki ruchu oraz zadawać ręcznie pozycję dla napędu.

Pozycjonowanie względne ustawiamy w taki sposób:

I dla ścieżki nr2 będzie to:

 

Teraz po każdorazowym wyzwoleniu ścieżki nr2 nastąpi przesunięcie o 5000 impulsów (50mm) na + od aktualnej pozycji, obrazuje to poniższe zdjęcie:

Analogicznie jeśli wpiszemy pozycje ze znakiem minus (-), silnik przesunie się o zadany dystans na –

W powyższym poradniku omówiono podstawowe zastosowania sterowników CS2RS/EM2RS. Będzie to wystarczające dla części użytkowników prostych systemów pozycjonowania. Oczywiście sterowniki te posiadają znacznie wyższą funkcjonalność, która będzie opisywana w kolejnych artykułach.

Za pomocą wbudowanego portu RS485, możemy komunikować sterownik bezpośrednio z panelami operatorskimi. Dzięki takiemu rozwiązaniu, możemy tworzyć zaawansowane systemy pozycjonowania bazując na samych sterownikach silników krokowych, bez użycia zewnętrznego sterownika PLC. Takie rozwiązanie będzie opisane w kolejnych artykułach z tej serii.

Marcin Grajewski

W kolejnych artykułach opisaliśmy:

Silnik krokowy budowa, działanie i zastosowanie

Jak podłączyć silnik krokowy do sterownika?

Zintegrowany silnik krokowy – budowa, zastosowanie, zalety

Jak podłączyć sterownik silnika krokowego z generatorem impulsów

Sterownik PLC – budowa, rodzaje, zastosowanie

Enkoder – zasada działania, rodzaje, budowa

UdostępnijShare on FacebookShare on Google+Tweet about this on Twitter

Powiązane produkty

Newsletter
Bądź na bieżąco