Środek układu współrzędnych dla sterowników ruchu

Układ odniesienia jest punktem referencyjnym, który definiuje położenie sześciu stopni swobody dla sterownika PLCopen. Warto wiedzieć, jaką rolę pełnią różne układy odniesienia oraz poznać różnice między nimi.

Zrozumienie różnic pomiędzy układami współrzędnych i relacji, według których oddziałują one między sobą, jest kluczowe dla poprawnego sterowania ruchem grup elementów. W części czwartej PLCopen, globalnego standardu sterowania ruchem sterowników programowalnych IEC 61131-3, przedstawiono koncept ruchu wieloosiowego z wykorzystaniem grup. Grupy to zbiory osi mechanizmu, które działają razem w celu utworzenia ścieżki w przestrzeni trójwymiarowej. Przykładami takich mechanizmów są systemy suwnicowe, ramiona robotów, roboty typu delta i mechanizmy cięgnowe – każde urządzenie, w którym wiele osi pracuje jednocześnie, zapewniając ruch w przestrzeni.

Część wspomnianej idei stanowi pojęcie układu odniesienia w sterowniku. Układ odniesienia to punkt referencyjny, który określa położenie sześciu stopni swobody (DoF – degrees of freedom). Na owe sześć stopni swobody składają się X, Y, Z – współrzędne kartezjańskie oraz kąty Eulera – Rx, Ry i Rz – opisujące obrót wokół każdej z osi. Każdy poruszający się mechanizm, część lub stanowisko ma swój układ odniesienia. Ponieważ sterownik PLCopen może sterować wieloma grupami, a każda z grup oddziałuje na wiele części, warto rozumieć, w jaki sposób układ odniesienia wpływa na sterowanie, a także które z tych układów są ważne dla programisty.

Rys. 1. Reguła prawej dłoni dla układów kartezjańskich.

Każdy układ odniesienia ma punkt definiujący początek układu współrzędnych (punkt zero) dla wszystkich współrzędnych. Kierunki każdej z osi współrzędnych są tworzone zgodnie z regułą prawej dłoni (rys. 1). Jeżeli palec wskazujący wskazuje kierunek X, palec środkowy skierowany w odpowiednią stronę (jak na rysunku) definiuje kierunek osi Y, to kciuk wskazuje kierunek osi Z.

Do określenia kierunków kątów stosujemy również regułę prawej dłoni (rys. 2). Gdy kciuk wskazuje kierunek dodatni osi, kierunek wyznaczony przez oplatające oś palce to kierunek dodatni obrotów wokół tej osi.

Rys. 2. Reguła prawej dłoni dla współrzędnych kątowych.

Pozycja silnika

Najważniejszym zadaniem sterownika jest sterowanie pozycją poszczególnych silników realizujących ruch w osiach. Każda z osi w grupie ma swój własny układ współrzędnych (ACS – axis coordinate system), czyli określający położenie kątowe silnika. Dla większości skomplikowanych mechanizmów, takich jak przegubowe ramię manipulatora, robot typu delta lub mechanizmy cięgnowe, indywidualne pozycje układu ACS nic nie znaczą same w sobie; dopiero koordynacja tych układów ze sobą określa pozycję mechanizmu wyznaczaną przez równania kinematyki. Obliczenia te mogą być wykonywane w kontrolerze lub w osobnym sterowniku robota.

Podstawowym układem odniesienia dla każdej z grup jest układ odniesienia maszyny (MCS – machine coordinate system). Producent mechanizmu określa punkt, w którym znajduje się MCS. W przypadku przegubowych ramion manipulatorów i robotów typu delta zwykle znajduje się on u podstawy robota. Sterownik dokonuje obliczeń kinematycznych niezbędnych do określenia położenia układu współrzędnych kiści robota (TPCS – tool plate ccordinate system), który jest punktem zakończenia mechanizmu. Ten układ odniesienia sam w sobie jest nieistotny dla programisty, ale jest wykorzystywany do określenia położenia narzędzia. Narzędzie ma swój własny układ współrzędnych zwany układem odniesienia narzędzia (TCS – tool coordinate system).

Zadana pozycja

Zasadniczo narzędzie znajduje się zwykle na końcu mechanizmu. O jego położeniu może więc stanowić jedynie odsunięcie w osi Z układu TPCS, przypuszczalnie z kątem Rz opisującym obrót. Układ TCS używany jest głównie podczas uczenia pozycji i dostrajania maszyny, ale nie jest on często wykorzystywany przy ruchu zautomatyzowanym. Układ współrzędnych TCS znajduje się w punkcie końcowym narzędzia (TCP), który to punkt interesuje nas, gdy programujemy ruch. Gdy wywołujemy ruch w układzie maszyny (MCS), to właśnie punkt TCP porusza się do zadanej przez nas pozycji (rys. 4).

Rys. 4. Przykład zależności pomiędzy układem odniesienia maszyny (MCS) i punktem końcowym narzędzia (TCP).

Ponieważ każda grupa ma swój własny układ maszyny (MCS), ruch różnych grup do tej samej pozycji w przestrzeni wymaga, aby każdej z grup zadany został ruch w odniesieniu do układu referencyjnego maszyny. Jeśli dwa roboty przenoszące pracują przy jednym przenośniku, osiągnięcie tego samego punktu przestrzeni przenośnika wymagać będzie różnych pozycji wobec maszynowych układów odniesienia.

By uprościć ruch w tego typu wspólnej przestrzeni, maszynowy układ współrzędnych może zostać odsunięty od globalnego układu odniesienia całego stanowiska (WCS – world coordinate system). Każde stanowisko ma tylko jeden globalny układ współrzędnych (WCS). Podczas konfiguracji indywidualnych grup odsunięcie – z sześcioma stopniami swobody – określane jest w stosunku do układu WCS. Pozwala to wielu mechanizmom na używanie wspólnego układu odniesienia w celu uproszczenia programowania.

Końcowy układ współrzędnych, do którego się odnosimy, jest układem obiektu (PCS – part coordinate system). Układ ten służy do określenia pozycji i orientacji poszczególnych obiektów w przestrzeni i jest przyłożony do obiektu i porusza się razem z nim.

Jest on szczególnie istotny wówczas, gdy operujemy na obiekcie, np. za pomocą urządzeń podnieś-upuść. Inne zastosowanie to śledzenie przenośnika, gdzie część przenoszona jest na przenośniku. W tym przypadku PCS porusza się względnie do układów odniesienia globalnego (WCS ) oraz maszyny (MCS), więc poruszanie punktem TCP maszyny do określonej pozycji PCS musi uwzględniać zmieniającą się odległość pomiędzy układami odniesienia (rys. 3).

Zrozumienie różnic pomiędzy układami odniesienia oraz sposobu, w jaki na siebie oddziałują, jest kluczowe do poprawnego wysterowania ruchem grup wg koncepcji standardu IEC. Różne układy współrzędnych są stosowane razem, by wykonać określoną operację.

Rys. 3. Układy współrzędnych obiektów określają pozycję i położenie danych obiektów i poruszają się wraz z nimi.

Śledzenie ruchu przenośnika – przykład

Na przykład w aplikacji śledzącej ruch przenośnika można w pierwszej kolejności zadać ruch punktu TCP na początek obszaru śledzonego. Gdy położenie i orientacja zostanie określona, urządzenie śledzące przenośnik oblicza odsunięcie obiektu od układu odniesienia maszyny (MCS). To odsunięcie określa położenie układu obiektu (PCS) i zależność między MCS a funkcją śledzącą przenośnik, dostosowując odsunięcie PCS wraz z ruchem układu. Użytkownik inicjuje ruch w przestrzeni PCS, jakim jest podniesienie części. Jako że odsunięcie układu obiektu (PCS) ma sześć stopni swobody, wzięte pod uwagę zostanie również obrócenie obiektu na przenośniku.

Orientacja narzędzia do obiektu nastąpi automatycznie (jeśli będziemy tego chcieli), ponieważ wynika z odsunięcia pomiędzy układami współrzędnych. Sama pozycja układu PCS jest używana do każdego podniesienia przedmiotu, ze zmieniającą się jedynie wartością odsunięcia w przypadku nowych obiektów. Ponieważ funkcja śledząca ruch przenośnika stale zmienia wartość odsunięcia układu PCS, punkt narzędzia (TCP) również podąża w kierunku ruchu przenośnika, aby skompensować ruch obiektu.


Mark Wilder – Motion Application Engineer w firmie Yaskawa America Inc.