W poprzedniej części tej serii przeanalizowaliśmy podstawowe zagadnienia z budową i zasadą działania serwomechanizmów. W tym artykule również zwrócimy uwagę na serwomechanizmy, a konkretniej na sposoby ich podłączenia i programowania. Ostatnie dwa punkty tego tekstu są poświęcone przykładowym programom wykorzystujących serwa, podajemy też link z dodatkowym kursem programowania oraz udostępniamy pełne oprogramowanie GX Works 3 na 60 dni.
Kurs Automatyki
1: Serwomechanizmy: Mitsubishi 1/3 Budowa i zasada działania
2: Serwomechanizmy: 2/3 Podłączenie i programowanie
3: Serwomechanizmy: 3/3 Funkcje stosowane w praktyce
KURS AUTOMATYKI – FILM
Poniższy film jest kolejnym odcinkiem Kursu Automatyki. Po obejrzeniu zachęcamy do przeczytania reszty tego artykułu gdzie zostało wyjaśnione więcej szczegółów.
Serwomechanizmy i ich budowa na podstawie informacji z poprzedniej części – przypomnienie.
Według powyższego schematu do zakręcenia silnikiem potrzebujemy sterownik PLC** z modułem pozycjonowania, serwowzmacniacz oraz oczywiście serwomotor. W tym kursie wybraliśmy Sterownik PLC Mitsubishi FX5U z modułem pozycjonowania Mitsubishi FX5-40SSC-S (do 4 osi /serwomotorów) , Serwowzmacniacz z najnowszej serii Mitsubishi – MELSERVO J4 oraz serwomotor HG-KR13.
**Sterownik PLC nie jest konieczny, jeśli mamy serwowzmacniacze typu A, wtedy możemy nimi sterować również za pomocą sygnałów cyfrowych. Sterownik PLC będzie potrzebny dopiero do serwowzmacniaczy typu B.
W poprzednim artykule, skupiliśmy się ogólnie na zasadzie działania układu serwomechanizmu. Teraz przyjrzyjmy się przykładowym połączeniom elektrycznym.
Podłączenie PLC i modułu pozycjonowania
Sterownik PLC FX5U-32M zasilany jest napięciem 230V ale posiada również wbudowany zasilacz 24VDC przeznaczony do zasilania wejść cyfrowych. Moduł pozycjonowania FX5-40SSC-S podłącza się do sterownika PLC z prawej strony za pomocą taśmy komunikacyjnej. Oprócz tego moduł pozycjonowania należy dodatkowo zasilić napięciem 24VDC na potrzeby komunikacji światłowodowej z serwowzmacniaczami.
Zauważ, że moduł pozycjonowania FX5-40SSC-S ma jeszcze złącze od frontu. 26 pinów skrywa w sobie dodatkowe funkcjonalności. Dedykowany kabel zakończony jest płytką z zaciskami dla wygodnego połączenia sygnałów zewnętrznych. Możemy podłączyć do tego złącza dodatkowy zewnętrzny enkoder inkrementalny służący do synchronizacji pozostałych osi. Funkcja ta jest niezwykle przydatna przy maszynach pakujących i nawijających. Oprócz tego złącze posiada kilka wejść cyfrowych w tym 4 z wyborem funkcjonalności w oprogramowaniu GX Works 3.
Podłączenie modułu pozycjonowania i serwowzmacniaczy
Moduł pozycjonowania Mitsubishi Electric FX-40SSC-S jest w stanie obsłużyć do 4 osi (są też modele do 8 osi: FX-80SSC-S), co oznacza, że można do niego podłączyć aż cztery serwowzmacniacze. Do każdej osi serwowzmacniacza przypisany jest numer ułatwiający identyfikację (od 0 do 3) i ustawiany jest ręcznie na każdym serwowzmacniaczu przez pokrętło. Przykładowo, jeśli w programie sterowania wykonujemy operację dla osi 2 to moduł pozycjonowania wie, że ma wysłać sygnał sterujący do serwowzmacniacza z ustawionym pokrętłem wyboru osi na 2.
Na poniższym zdjęciu widać elementy znajdujące się pod klapką serwowzmacniacza. Na wyświetlaczu można zobaczyć status lub ewentualne alarmy. Po prawej znajduje się pokrętło wyboru numeru osi (SW1) a pod spodem switche do ustawienia sterowania osi np. tryb “TEST” do dostrajania i sterowania bezpośrednio z oprogramowania MR Configurator 2.
Cały program sterowania serwomechanizmami wraz z konfiguracją zostaje przechowywany w sterowniku PLC (dokładniej w module pozycjonującym Simple Motion). Oznacza to, że w razie potrzeby wymiany serwowzmacniacza nie musimy wgrywać na nowo programu. Wystarczy ustawić taki sam numer osi na serwowzmacniaczu a następnie (o ile to konieczne) wykonać bazowanie osi. Bazowanie jest konieczne ponieważ pozycja serwomotoru zostaje przechowywana w serwowzmacniaczu.
Moduł pozycjonujący komunikuje się z serwowzmacniaczami wykorzystując interfejs SSCNET III/H. Interfejs ten pracuje w komunikacji optycznej, dzięki czemu zapewnia szybką transmisję danych typu pełny dupleks i doskonałą tolerancję szumów. Nie musimy martwić się o jakikolwiek wpływ zakłóceń elektromagnetycznych na jakość komunikacji.
Na poniższym zdjęciu widać przykładowe połączenia komunikacji pomiędzy modułem pozycjonowania a dwiema osiami (serwowzmacniaczami). Dla modułu pozycjonowania nie ma znaczenia ani kolejność połączeń ani kolejność numeracji serwowzmacniaczy.
Należy jednak zwrócić uwagę na następujące kwestie korzystając z kabli SSCNET III.
- Zgięcie, szarpnięcie lub skręcenie może doprowadzić do uszkodzenia kabla ponieważ są one wewnątrz wykonane z żywicy syntetycznej.
- Zabrudzone końcówki światłowodu mogą powodować zakłócenia transmisji i wywoływać usterki.
- Światło wykorzystywane do komunikacji jest bardzo intensywne dlatego należy unikać patrzenia na końcówki kabla przy włączonym zasilaniu.
- Zakończenie obwodu CN1B na ostatniej osi powinno być zasłonięte przez dołączoną do zestawu zaślepkę.
Podłączenie serwowzmacniacza i serwomotoru
Podłączenie serwomotoru nie należy do najtrudniejszych czynności, jednak należy je wykonać bardzo starannie. Częste przełączenia prądów i napięć elektrycznych, na przykład, gdy używany jest serwowzmacniacz, powoduje generowanie zakłóceń w zakresie wysokich częstotliwości (zakłócenia HF). Te zakłócenia rozprzestrzeniają się przez linie zasilające, a także drogą powietrzną. Przewody sygnałowe i zasilające serwowzmacniaczy działają jak anteny i emitują fale zakłócające. Z tego powodu połączenia elektryczne należy wykonywać bardzo starannie. Przewody połączeniowe między serwowzmacniaczem i silnikiem są szczególnie silnym źródłem zakłóceń.
W celu ograniczenia usterek w systemach napędów z regulowaną prędkością Unia Europejska wprowadziła dyrektywy i normy EMC (kompatybilność elektromagnetyczna). Aby spełnić wymagania dyrektyw i norm podczas projektowania, wykonywania połączeń elektrycznych i montażu maszyny należy postępować zgodnie z poniższymi zasadami:
- W celu redukcji emitowanych zakłóceń, urządzenia należy instalować w zamkniętych, uziemionych metalowych szafach sterowniczych.
- Należy sprawdzić poprawność wykonania połączeń obwodu uziemienia.
- Używać przewodów ekranowanych.
- Urządzenia czułe na zakłócenia należy umieszczać możliwie najdalej od źródeł zakłóceń lub instalować źródło zakłóceń w oddzielnej szafie sterowniczej.
- Przewody sygnałowe oraz przewody zasilające należy prowadzić oddzielnie, możliwie najdalej od siebie. Należy unikać równoległego instalowania długich kabli ekranowanych (np. linii zasilającej) i przewodów, podatnych na wpływ zakłóceń (np. ekranowanych kabli silnikowych)
Do podłączenia silnika i enkodera dostępne są gotowe kable połączeniowe. W większości przypadków używane są wtyczki połączeniowe, co ułatwia i upraszcza wykonywanie połączeń jednocześnie zabezpiecza przed błędami w połączeniach.
Biorąc powyższe pod uwagę teraz wiesz, dlaczego komunikacja pomiędzy modułem pozycjonowania a serwowzmacniaczem wykorzystuje światłowód, który jest odporny na zakłócenia elektromagnetyczne.
Podłączenie zasilania do serwowzmacniacza
Wykorzystywany w tych artykułach serwowzmacniacze zostały podłączone do zasilania 230V tak samo jak napięcie sterownicze.
Powyższe połączenia pokazują jedynie przykład zastosowany w walizce szkoleniowej ale nie należy się nim posiłkować. W dokumentacji MELSERVO J4 możemy znaleźć również przykładowe podłączenie wraz z podstawowym obwodem bezpieczeństwa (zaznaczono na pomarańczowo). Na poniższym rysunku możemy zauważyć obwód uruchamiający stycznik MC, który z kolei dopiero po załączeniu podaje napięcie dla obwodu głównego zasilania serwomotoru. Zauważ, że napięcie sterownicze na zaciskach L11, L12 jest podłączone z przed stycznika MC. Dzięki temu funkcje diagnostyczne serwowzmacniacza będą nadal działać mimo rozłączonego stycznika MC.
Podłączenie zewnętrznych urządzeń we/wy do serwowzmacniacza
Gniazdo CN3 służy do podłączenia wejść i wyjść dodatkowych do serwowzmacniacza. Między innymi są to sygnał alarmu przerywający obwód załączenia stycznika do zasilania serwowzmacniacza, czujniki krańcowe osi serwa lub czujnik zbliżeniowy do automatycznego osiągania pozycji referencyjnej. Poniższy rysunek zawiera spis najczęściej stosowanych sygnałów. Pozostałe informacje można znaleźć w dokumentacji technicznej Melservo J4.
Podłączenie baterii do serwowzmacniacza
Jeśli wymagane jest podtrzymanie pozycji osi po zaniku zasilania na serwowzmacniaczach to należy je doposażyć w opcjonalne baterie. Dzięki temu możliwe będzie podtrzymanie pozycji absolutnej serwomotorów.
Programowanie serwomechanizmów Mitsubishi Electric
Do programowania układów serwomechanizmów będziemy potrzebowali następującego oprogramowania:
GX Works3 – Oprogramowanie narzędziowe do sterowników. Oferuje łatwe w użyciu, intuicyjne środowisko programistyczne, które zawiera wiele nowych funkcji, takich jak graficzna konfiguracja systemu, zintegrowana konfiguracja sterowania ruchem i wsparcie dla wielu języków.
MR Configurator 2 – oprogramowanie służące do parametryzacji oraz strojenia serwomechanizmów.
W praktyce warto zainteresować się również zintegrowanym oprogramowaniem inżynierskim iQ Works który zawiera w sobie wiele innych programów takich jak GX Works3, MT Works2, GT Works 3, RT ToolBox mini oraz FR Configurator2. Pakiet często wychodzi o wiele taniej niż kupno pojedynczych programów.
Oprogramowanie GX Works3
Oprogramowanie GX Works 3 potrafi pozytywnie zaskoczyć. Soft jest na prawdę przyjazny (user frendly) posiadający funkcjonalność ułatwiającą pracę programisty. Na każdym kroku napotkamy podpowiedzi i sugestie autouzupełniania. Spodobał mi się również edytor programu drabinkowego i blokowego, gdzie programując mamy wpływ dosłownie na wszytko. W dowolnym miejscu możemy przesunąć bloki i umieścić komentarze. Struktura okien, zakładek i możliwość rozmieszczenia poszczególnych funkcji w górnym pasku sprawia że zawsze mamy dostęp do najważniejszych opcji pod ręką. Należy dodać że MELSOFT GX Works 3 ma rozbudowaną pomoc, wystarczy podczas pracy wybrać jakiś element i wcisnąć klawisz F1 a pojawi się okienko z wszystkimi niezbędnymi informacjami. Oprogramowanie działa bardzo płynnie i już po pierwszym starciu można powiedzieć, że jest to dobra platforma programistyczna.
W GX Works 3 nie tylko możemy programować sterowniki PLC ale również konfigurować sterowanie ruchem i parametryzować moduły pozycjonujące. Pod dodaniu modułu pozycjonującego np. FX5-40SSC-S i wybraniu Simple Motion Module Set otworzy się nam nowe okno gdzie możemy konfigurować wszystkie osie (parametry serwowzmacniaczy) w jednym miejscu. Jest to bardzo wygodne, ponieważ możemy jednocześnie porównywać poszczególne osie. Na oklaski zasługuje pomoc, która pojawia się w okienku pod spodem po wybraniu jakiegokolwiek parametru. Takie komentarze wspierają rysunki i wykresy, które są bardzo pomocne szczególnie dla napędowców/programistów o podstawowym i średnim stopniu doświadczenia. Programując w platformie GX Works 3 ma się wrażenie, że nie jesteś sam a cały czas z wirtualnym asystentem, który podpowiada co masz robić.
Całą sekwencję sterowania programuje się w środowisku GX Works 3 począwszy od sterownika PLC po parametryzację modułu pozycjonowania simple motion. W gruncie rzeczy mogłoby to wystarczyć, bo jesteśmy w stanie zaprogramować i ustawić maszynę aby spełniała swoje funkcje. Jednak aby doprecyzować jej działanie i odkryć to co nie widać gołym okiem będziemy potrzebowali dodatkowego oprogramowania MR Confgurator 2.
Oprogramowanie MR Configurator 2 a serwomechanizmy
Wyobraź sobie, że już masz napisany program, zmontowany układ sterowania i podłączoną mechanikę. Po wgraniu i uruchomieniu, pierwszych testach i poprawkach maszyna być może zachowuje się blisko osiąganych efektów ale można by jeszcze trochę podkręcić jakość. Możesz tego dokonywać metodą prób i błędów zmieniając poszczególne parametry jakie mają serwomechanizmy i obserwować zachowanie lub na przykład wcisnąć ONE TOUCH TUNING aby oprogramowanie MR Configurator 2 dobrało parametry za Ciebie. To tylko jedna z przydatnych operacji. Oprócz tego mamy do dyspozycji szereg funkcji diagnostycznych, tuningowych oraz dostęp do parametrów serwowzmacniaczy.
Możemy w czasie rzeczywistym uruchomić serwomotor w powtarzalnych ruchach (tryb testowania Positioning mode) i obserwować zmiany w działaniu maszyny po wprowadzonych operacjach manualnego tuningu lub po skorzystaniu z wielu opcji autotuningu.
Platforma programistyczna od Mitsubishi Electric do konfiguracji sterowania ruchem posiada ogromne możliwości i mimo skomplikowanego zagadnienia, jakim są serwomechanizmy, po pierwszym starciu już nie wydaje się to takie straszne. Grunt to zrozumieć podstawy, następnie możemy udać się na szkolenie organizowane przez Mitsubishi Electric i przekonać się na własne oczy, że możemy samodzielnie okiełznać serwomechanizmy.
Programowanie Simple Motion – od czego zacząć?
Serwomechanizmy są programowane w oparciu o moduł pozycjonowania Simple Motion FX5SSC. Proces odbywa się w GX Works 3, który ma zawarty w sobie podprogram MELSOFT Simple Motion. Oprócz tego, aby sterować ze sterownika to w programie PLC będziemy musieli odwołać się do pamięci modułu Simple Motion. Od czego zacząć?
Na wstępie musimy ściągnąć oprogramowanie GX Works 3. Jak to zrobić możesz dowiedzieć się na końcu tego artykułu. Podajemy również klucz licencyjny do pełnej wersji ograniczonej czasowo do 60 dni.
Po instalacji zanim zabierzemy się za konfigurację i programowanie polecam skorzystać z kursu przygotowanego przez Mitsubisi Electric. Kurs jest w postaci interaktywnej aplikacji, w której będziesz mógł sprawdzić jak krok po kroku wygląda programowanie Simple Motion w GX Works 3. Link do pobrania kursu interaktywnego (80 MB).
Poniżej znajduje się zrzut slajdów, abyś mógł się zorientować jak to wygląda. Jeśli jesteś zainteresowany to polecamy jednak ściągnąć cały kurs, w którym można dowiedzieć się o wiele więcej.
https://iautomatyka.pl/download/4-SIMPLE_MOTION_Module_iQ-F_kurs.pdf
Z powyższego kursu można dowiedzieć się jak, założyć projekt, skonfigurować oprogramowanie oraz podstawowe parametry serwa. Chciałbym rozszerzyć ten kurs o kilka wskazówek, aby pokazać jak wygląda zależność pomiędzy sterownikiem PLC a modułem pozycjonowania Simple Motion.
Serwomechanizmy – programowanie, przykład 1
Powiedzmy, że mamy dwie osie i nasze serwowzmacniacze zgłaszają błąd z powodu np. przeciążenia osi. W takim przypadku możemy chcieć taki błąd kasować z poziomu sterownika PLC. Prościzna, ale pod warunkiem, że wiemy od czego zacząć!
Przykładowy program wyglądałby tak.
Przeanalizujmy zatem co się tutaj dzieje. Małe cyferki pod każdą instrukcją symbolizują kolejność wykonywania operacji przez sterownik PLC, oprogramowanie GX Works 3 automatycznie przypisuje je do funkcji. Czasami jest to pomocne przy analizowaniu programu.
Zacznijmy od początku czyli od instrukcji 1.
- Jest to funkcja wykrywania zbocza narastającego, czyli jak bit “RESET_BŁEDU” zmieni stan z 0 na 1 to dalsza część programu zostanie wykonana.
- przenosimy stałą wartość 1
- wykorzystując instrukcję przeniesienia MOV
- na rejestr modułu pozycjonującego U1/G4302 – wysłanie komendy restart do serwowzmacniacza sterującego osią 1.
Dalej tą samą operację wykonujemy dla osi 2: - przenosimy stałą wartość 1
- wykorzystując instrukcję przeniesienia MOV
- na rejestr modułu pozycjonującego U1/G4402 – wysłanie komendy restart do serwowzmacniacza sterującego osią 2.
- wykorzystując funkcję RST (RESET) zerujemy bit “RESET_BLEDU”
O ile wykonywanie programu może Ci się wydawać jasne, to być może zastanawiasz się skąd czym jest “RESET_BLEDU” a tym bardziej czym są rejestry modułu pozycjonującego U1/Gxxxx! RESET_BLEDU jest to bitowa zmienna lokalna, bez konkretnego adresu tylko z nazwą symboliczną. Takie zmienne możemy tworzyć w programie GX Works 3 i korzystanie z nich jest bardzo wygodne bo wpisując pierwsze litery tej zmiennej oprogramowanie pokazuje listę pasujących elementów. Zamiast tej zmiennej możemy podstawić tutaj np. wejście cyfrowe od przycisku. Wtedy resetowanie osi można wykonać wciskając ten przycisk np. z poziomu pulpitu sterującego maszyną. Możemy też podstawić tutaj bit do, którego odwoła się panel HMI, wtedy resetowanie możemy wykonać wciskając przycisk na panelu dotykowym.
Jak odwołać się do pamięci modułu Simple Motion z poziomu sterownika PLC?
Natomiast aby odczytywać i zapisywać rejestry modułu pozycjonującego musimy użyć odwołania urządzenie/rejestr. W przypadku rejestru do restartowania błędu osi 1 będzie to U1/G4302. Skąd to wiem? Ze spisu rejestrów modułu pozycjonującego. Wszystkie rejestry do każdej osi są posegregowane i dostępne w Excelu.
Poniżej instrukcja jak do tego dotrzeć:
- Dodaj w konfiguracji moduł pozycjonowania,
- czyli przeciągnij FX5-40SSC-S 4 axes do okna konfiguracji,
- dopiero teraz w zakładce Parameter > Module Information pojawi się moduł o symbolu U1. Kliknij dwa razy w Simple Motion Module Setting,
- GX Works otworzy okno konfiguracyjne modułu pozycjonującego i wszystkich osi. W zakładce help,
- wybierz Buffer Memory Address List. Otworzy się wspomniany excel,
- w Excelu w zakładce Control data area znajdują się rejestry do sterowania. W polu Axis No. wybieramy numer osi po czym Excel wyświetli odpowiednie rejestry dla danej osi. Wygodne! Zauważ, że w wierszu Cd.5 znajduje się rejestr Axis error reset o numerze G4302, którego użyliśmy w programie PLC na rysunku wyżej.
Serwomechanizmy – programowanie, przykład 2
Wykonajmy proste sterowanie serwem. Niech to będzie sterowanie ręczne obrotami serwa z możliwością zmiany kierunku obrotów. Do tego wykorzystamy tryb JOG czyli uruchomienie obrotu serwomotoru o określonej prędkości. Załóżmy, że mamy 5 przełączników:
- Włączenie sterowania (JOG_ON).
- Obrót serwa 1 w prawo (JOG_FWD_AXIS1).
- Zwrot serwa 1 w lewo (JOG_REV_AXIS1).
- Obrót serwa 2 w prawo (JOG_FWD_AXIS2).
- Zwrott serwa 2 w lewo (JOG_REV_AXIS2).
Poniżej przykładowy kod drabinki do tego programu.
Aby wykonał się cały program najpierw musi być stale załączony przełącznik JOG_ON (10). Następnie do sterownia trybem JOG należy zdefiniować prędkość obrotu. Musimy zatem wysłać do modułu pozycjonującego Simple Motion prędkość obrotu dla osi pierwszej i drugiej dla trybu JOG. Aby tego dokonać wykorzystujemy funkcję DMOV (12), która wysyła nam wartość 10000 imp/s (11) na rejestr JOG speed osi 1, czyli na U1/G4318 (13). Analogicznie postępujemy dla osi 2 (instrukcje 14,15,16).
Kiedy mamy już zdefiniowaną prędkość, to możemy przystąpić do wysłania rozkazu uruchomienia obrotu serwa na przykład w prawo. Przekręcamy zatem przełącznik JOG_FWD_AXIS1 (17) i o ile w tym samym czasie nie mamy załączonego przełącznika obrotu w lewo JOG_REV_AXIS1 (18) to wykona się instrukcja (19) czyli Forward run JOG start U1\G30102.0 i serwo zacznie obracać się w prawo. Analogicznie postępujemy dla obrotu w lewo oraz dla osi 2.
Rejestry odpowiedzialne za uruchomienie serwa znajdziemy w Excelu w wierszu Cd.181 i Cd.182:
Serwomechanizmy – warto wiedzieć
Zauważ że w każdej instrukcji uruchomienia serwa występuje zabezpieczenie przed wysterowaniem osi w obu kierunkach na raz. Pisząc programy PLC musimy stosować takie procedury na każdym kroku. Mówi się, że program PLC musi być odporny na niewiedzę. Programując nie możemy kierować się takimi zasadami, że “operator maszyny się tego domyśli” albo “nie ma sensu stosować tego zabezpieczenia bo przecież i tak wszyscy wiedzą o co chodzi” i tak dalej. Twój program musi być mądrzejszy od operatora i jego prób przechytrzenia maszyny lub realizacji nieodpowiedzialnych pomysłów.
Zwróć uwagę jeszcze na jedną rzecz. W przykładzie pierwszym do restartowania błędu osi serwa wykorzystywaliśmy funkcję MOV, przenosiliśmy wartość 1 na rejestr U1/G4302. Czyli dokonywaliśmy operacji na rejestrze 16-bitowym. W przypadku zdefiniowania prędkości osi serwa w trybie JOG z przykładu 2 operujemy na rejestrach 32-bitowych. Spójrz, że w Excelu poniżej dla wartości JOG SPEED mamy przypisane dwa rejestry U1/G4318 oraz U1/G4319. Dlatego w przykładzie 2 do przeniesienia użyliśmy instrukcji DMOV która przenosi od razu dwa rejestry, ale deklarujemy tylko pierwszy czyli U1/G4318.
Więcej o funkcjach stosowanych w praktyce przy sterowaniu ruchem możesz zobaczyć w następnej części tej serii artykułów.
GX Works 3 do pobrania
- Logujemy się na MyMitsubishi : https://pl3a.mitsubishielectric.com/fa/pl/mymitsubishi
- Wchodzimy w oprogramowanie -> wyszukujemy GX Works3
- Pobieramy najnowszą wersję 1.035M
- Używamy kodu instalacyjnego 208-437676835
- Wraz z GX Works3 instaluje się też MR Configurator 2 – do zabawy z samym serwo (parametryzacja i nie tylko)
Serwomechanizmy Mitsubishi – więcej tutaj: https://pl3a.mitsubishielectric.com/fa/pl/products/drv/servo/index.html