k - Technologia i Automatyzacja Montażu
Transkrypt
k - Technologia i Automatyzacja Montażu
1/2009 TECHNOLOGIA I AUTOMATYZACJA MONTAśU ZAGADNIENIA ZAUTOMATYZOWANEGO PLANOWANIA RUCHÓW ROBOTÓW PRZEMYSŁOWYCH W ELASTYCZNYCH SYSTEMACH MONTAśOWYCH Valery KYRYLOVICH, Martin BOGDANOWSKI Większość operacji technologicznych (OT), wykonywanych przez roboty przemysłowe (RP), moŜna rozpatrywać jako zagadnienie formowania kolejności stanów kinematycznych układu manipulacyjnego (UM) RP, odpowiadających zadaniu technologicznemu z zachowaniem warunków praktycznej moŜliwości realizacji przejść pomiędzy nimi, funkcjonalności i osiągnięciem zadanych wskaźników jakościowych i ilościowych. Takie przedstawienie OT na taktycznym poziomie sterowania odpowiada kształtowaniu nominalnych warunków pracy RP, którego rezultatem jest prawo zmiany współrzędnych uogólnionych określających końcową zaprogramowaną trajektorię (ZT) pomieszczenia organów roboczych (OR) RP. Kompletność rozwiązania zagadnień kinematyki i dynamiki z uwzględnieniem ograniczeń ruchów UM i przeszkód, poszukiwania rozwiązania w pojawiających się przy tym sytuacjach „bez wyjścia”, optymalizacja planowania trajektorii i moŜliwości zastosowania współczesnych metod zalgorytmizowanych, szeroko stosowanych w technice obliczeniowej, stanowią podstawowe wymagania przy zautomatyzowanym planowaniu ruchów OR RP. ANALIZA BADAŃ I PUBLIKACJI Większość znanych metod planowania ZT opiera się na poszukiwaniu parametrów wektora sterowania, przenoszącego UM ze stanu początkowego w końcowy, na podstawie zlinearyzowanych równań, opisujących jego zachowanie przy niewielkich zmianach współrzędnych. Przy rozwiązywaniu tych równań dość skomplikowane jest uwzględnienie ograniczeń wartości współrzędnych uogólnionych, uwarunkowanych cechami konstrukcyjnymi i ograniczeniami przestrzeni roboczej (PR)[1]. Planowanie ZT moŜe się odbywać w przestrzeni kartezjańskiej lub w przestrzeni współrzędnych uogólnionych. W pierwszym przypadku planowanie następuje według połoŜenia OR RP drogą interpolacji pomiędzy punktami węzłowymi w dyskretnej przestrzeni roboczej, która umownie tworzy siatkę. Metody słuŜące do opisania ruchu prostoliniowego pomiędzy kolejnymi punktami węzłowymi przedstawiono w pracach [2, 3, 4]. W zaleŜności od układu sterowania RP otrzymana tym sposobem trajektoria moŜe być realizowana automatycznie na podstawie odchyleń między bieŜącym i zadanym połoŜeniem chwytaka RP w przestrzeni kartezjańskiej lub przeniesiona do przestrzeni współrzędnych uogólnionych poprzez aproksymację wielomianami niskiego stopnia z następną realizacją na pod- 18 stawie odchyleń zmiennych przyłączonych. Planowanie ZT w układzie współrzędnych uogólnionych zapewnia mniejsze nakłady obliczeniowe, ale otrzymane w rezultacie sterowanie zlinearyzowane wymaga dalszej stabilizacji dynamicznej. Przy planowaniu ZT wyróŜnia się dwa podstawowe podejścia: kinematyczne i dynamiczne [2]. Efektem kinematycznego planowania ZT jest sformułowanie prawa zmiany współrzędnych uogólnionych z uwzględnieniem jedynie parametrów kinematycznych i ograniczeń UM RP. Określone w ten sposób nominalne sterowanie wymaga sprawdzenia moŜliwości jego realizacji na podstawie pełnego modelu dynamiki. Jedna spośród zautomatyzowanych metodyk planowania ZT z uwzględnieniem aspektu kinematycznego w procesie montaŜu została przedstawiona w pracy [5]. Przy tym uwzględniono ograniczenia dynamiczne w postaci maksymalnie dopuszczalnych prędkości przemieszczenia oddzielnych stopni ruchliwości RP z uzyskaniem suboptymalnej trajektorii (ze względu na szybkość działania). Celem niniejszej pracy jest prezentacja proponowanej metodyki planowania ruchu OR UM RP z uwzględnieniem dynamiki przy realizacji zadań związanych z obsługą wyposaŜenia technologicznego. ZAGADNIENIA OGÓLNE Ogólnie wyznaczenie zaprogramowanego ruchu (ZR) sprowadza się do rozwiązania dwupunktowego zagadnienia brzegowego z zachowaniem warunków brzegowych (1), a takŜe konstrukcyjnych i dynamicznych ograniczeń (2) w czasie t ∈ [t0 , tk ] : x p (t0 ) = x0 ; x p (tk ) = xk ; (1) x p (t ) ∈ Qx x& p (t ) ∈ Q& x ( x p (t ), x& p (t )) ∈ PF (2) gdzie: • x0 , x k – zadane początkowe i końcowe stany OR; TECHNOLOGIA I AUTOMATYZACJA MONTAśU • 1/2009 Q xt , Q& x – ograniczenia zmiany połoŜenia i prędko- gdzie: • x(t) – n-miarowy wektor stanu mechanizmów wykonawczych i napędu RP; • u(t) – m-miarowy wektor sterowania; • ξ – wektor parametrów konstrukcyjnych UM, określany napędową i napędzaną częścią RP PF, podprzestrzenią PF jest zbiór (4): dzielono na dwa podstawowe etapy, przedstawione na rys. 1. Na pierwszym etapie przeprowadza się planowanie kinematyczne drogą rozwiązania zagadnienia brzegowego z warunkami początkowymi (1), którymi są punkty węzłowe trajektorii i dwa pierwsze ograniczenia przedstawione w wyraŜeniu (2). Przy tym, dla punktów węzłowych rozwiązuje się odwrotne zadanie kinematyki (OZK) poprzez wstępne generowanie przypadkowych konfiguracji początkowych z następnym wykorzystaniem metody Gaussa-Seidela. Otrzymany zbiór konfiguracji, określających stan UM w węzłowych punktach trajektorii z wykorzystaniem PKS, RP i OM, analizuje się ze względu na obecność przeszkód pierwszego i drugiego rodzaju (środowisko otaczające i samoprzecięcie UM RP z rejestracją OM) z wykorzystaniem R-funkcji w formie predykatów. Otrzymany w ten sposób zbiór ścięty (5) stanowi rezultat kinematycznej analizy UM RP w węzłowych punktach trajektorii [5]: PF = { x, f ( x(t ), u (t ), ξ )} : x ∈ R n , u ∈ R m Qt = q kj F q kj = M k , Manipulato r q kj ∩ Barriers ści współrzędnych uogólnionych UM RP w przestrzeni konfiguracji; • PF – podprzestrzeń dozwolonego ruchu od sterowa- nia, której jawna postać określona jest jawną postacią równań ruchu członów RP. I tak, w ogólnym przypadku przedstawienia dynamiki RP w postaci wektorowego równania róŜniczkowego (3): x& (t ) = f ( x(t ), u (t ), ξ ) , (3) , (4) gdzie: • R – przestrzeń euklidesowa odpowiedniej wymiarowości. Liczne znane klasyczne metody rozwiązywania zagadnień brzegowych w przypadku wyznaczania ruchu OR RP są mało efektywne lub nieprzydatne [1, 2], co związane jest przede wszystkim z koniecznością uwzględnienia ograniczeń (2), mających, w ogólnym przypadku, złoŜony charakter. Z tego powodu problem wyznaczania ruchu naleŜy rozdzielić na etapy, oddzielnie planując ruch bez przeszkód, oddzielnie z ich uwzględnieniem. Znane algorytmy planowania [4] wymagają generowania siatki przestrzeni konfiguracyjnej UM RP, wyboru na niej drogi między węzłowymi punktami trajektorii z następnym przeglądaniem jej węzłów przy analizie przeszkód. W innym przypadku [1], wymagane jest konstruowanie funkcji bazowych, uwzględniających ograniczenia (2) przy planowaniu w przestrzeni kartezjańskiej. Wymienione uwagi i cechy szczególne planowania ruchów wymagają uwzględnienia przy określaniu kolejności rozwiązywanych problemów ze względu na kompletność rozwiązania, moŜliwości następnej automatyzacji i nakłady obliczeniowe. Dla zautomatyzowanego planowania ruchów w ogólnym przypadku konieczna jest rejestracja geometrycznych, kinematycznych i dynamicznych charakterystyk UM RP, obiektu manipulowania (OM) i środowiska otaczającego. W tym celu wykorzystano zmodyfikowany sformalizowany opis projektowej kinematyki systemu (PKS) RP, OM i środowiska otaczającego [5], a takŜe parametry dynamiczne UM RP. Zagadnienie planowania ruchów po- { ( ) ( ) ( ), = Ø, Manipself q j k (5) gdzie: • M k – macierz połoŜenia i orientacji chwytaka RP w k -tym węzłowym punkcie trajektorii; F ( qkj ) • – równanie macierzowe, wiąŜące macierz stanu UM RP z wektorem współrzędnych uogólnionych; – wektor współrzędnych uogólnionych • q q = {qi }|i =1, I ; • { ( ) Manipulato r q kj = = x, y , z } Manipulato RFunc ( x, y , z , q ) ≥ 0 – za- pis przestrzeni skończonej zajmowanej przez UM RP, dla której określono wartość R-funkcji ze względu na przeszkody 1 rodzaju ManipulatorRFunc x, y , z , q ; ( • ) Barriers = { x, y , z | BarriersRFunc ( x , y , z ) ≥ 0} – zapis przestrzeni skończonej zajmowanej przeszkodami, dla której określono wartość R-funkcji ze względu na ogół przeszkód • BarriersRFunc ( x, y, z ) ; ( ) Manipself (q kj ) = Manipulator q kj ( ∩ Manipulator q j k j +2 j )∩ Manipulator(q ) j k i−2 i =1, I – funkcja przeszkody drugiego rodzaju; • j – numer konfiguracji dla k -tego punktu węzło- wego trajektorii; i – numer ogniwa kinematycznego od podstawy do • OR UM RP dla k -tego punktu węzłowego trajektorii. 19 1/2009 TECHNOLOGIA I AUTOMATYZACJA MONTAśU Informacja źródłowa OT i OM RP Parametry dynamiczne 1. Masy członów NUM 1. Sformalizowany pis PKS OT ПКС OTn n =1,N = U {lic Oi typei [p1 , p2 ]} I Jxyi i =1,I 3. Skupione środki mas członów. 4. Parametry napędów ze wskazaniem ograniczeń ich sterowania. 2. Opis OM ОМ l l =1,L ⊂ ПРm m=1,M = lic Oi typei [p1 , p2 ]i= I l =1, L ⊂ ПРm m=1,M i =1,I 2. Tenzory bezwładności członów i =1 ОМd l mi Parametry geometryczne i kinematyczne: = mi , Jxyi i = I 1. Sformalizowany opis PKS RP ПКС ПРm m=1,M = = lic Oi typei [p1 , p2 ]τ i (liv ) Si i =1, I 2. Zbiór podstawowych punktów trajektorii przemieszczeń OR między zespołami ze wskazaniem wektorów podejścia do realizowanych zadań OT ТРi n,k k =1, K ТРou t, k II e t a p Pełny model dynamiki UM RP x& = Ax + bN (u) + fH (q)q&& + fh(q, q& ) Model dynamiki NUM P = H (q )∗ q&& + h(q, q& ) Dyskretyzacja trajektorii lokalnych qk ( t ) t =1,t q&kjj = {(q → q k ( S ⋅ T ) / t m ax k } i =1 , I , T = ( q k +1 − q k ) / S H(q) - macierz bezwładności NUM; h(q,q*) - macierz sił odśrodkowych Coriolisa i grawitacyjnych j k +1 j − q j kj )/ j =1 , J , k = 1 , K = [ x, y, z,o, p, n]} k = 1,K → {GDk Normowanie prędkości ruchu członów UM RP t = S ⋅T max k k =1, K →{GDk = [ x, y, z , o , p, n ]} k =1,K Okreslenie zbioru konfiguracji dla węzłowych punktów trajektorii: - generowanie NK; - rozwiązanie OZK. Analiza samoprzecięcia i stref niedozwolonych przestrzeni roboczej RP: Manipulator ( q k ( S ⋅ T )) ∩ Barriers = ∅ Model dynamiki układu napędowego RP . q& = Aq + bu + fp Manipself ( q k ( S ⋅ T )) = ∅ A, b, f - macierze i wektory stałych parametrów układu napędowego Rozwiązanie zagadnienia kinematyki. Utworzenie zbioru dyskretnych cyklicznych trajektorii w przestrzeni kartezjańskiej. Utworzenie zbioru cyklicznych trajektorii (wykorzystanie programowania dynamicznego) I I i =1 i =1 W = ∑ Fs (xis , u is−1 ) = ∑ wi (q is+1 − q is ) Os−1 ( xsi −1) = min ( Fs ( f s−1 ( x is−1 ,u is−1 )) + Os ( f s−1 ( x is−1 ,usi−1 ))) uis −1 ∈U s− 1 u ( xsi , k ) = ϕ ( x is ,k ) Korekcja zdyskretyzowanych trajektorii lokalnych. s =1, S , k =1, K Rezultaty 1. Subtymalne cykliczne trajektorie RP według określonego funkcjonału. 2. Nominalne sterowanie według stopni ruchliwości UM RP. 3. Ocena nakładów na wykonane przemieszczenie. Rys. 1. Podstawowe etapy zautomatyzowanego planowania ruchów UM RP 20 I e t a p TECHNOLOGIA I AUTOMATYZACJA MONTAśU 1/2009 Dla analizy kinematycznej moŜliwości realizacji nominalnego ruchu OR UM RP z uwzględnieniem drugiego wyraŜenia ograniczenia (2) przeprowadza się dyskretyzację trajektorii między jej punktami węzłowymi, zakładając jednoczesną realizację ruchu wszystkich stopni ruchliwości z następnym rozwiązaniem OZK w dyskretnych momentach czasu ruchu. W tym celu przeprowadza się normowanie prędkości ruchu wszystkich członów UM RP, zakładając trapezową zmianę prędkości dla najdłuŜszego czasu przejścia między sąsiednimi węzłami trajektorii t max k : j q& k ,i = {( qkj+1,i − qkj ,i ) / tmax k } Zakładając liczbę przedziałów dyskretyzacji S, konfiguracja UM RP qk ( s ⋅ T ) , gdzie T = ( q k +1 − q k ) / S jest sprawdzana na występowanie przecięcia z przeszkodami pierwszego i drugiego rodzaju z wykorzystaniem R-funkcji jednego typu. W przypadku znalezienia się UM RP w niedozwolonej strefie w pewnym przedziale s przeprowadza się korekcję konfiguracji z wykorzystaniem algorytmu [5], dającą ściętą przestrzeń konfiguracyjną, zawartą między sąsiednimi węzłowymi punktami trajektorii wokół niedozwolonych stref UM RP. Celem drugiego podstawowego etapu planowania ruchu z uwzględnieniem dynamiki UM RP jest wybór optymalnej trajektorii odpowiadającej konstrukcyjnym i zewnętrznym ograniczeniom ruchu. W celu otrzymania i oceny wektora sterowania proponuje się wykorzystanie na tym etapie pełnego modelu dynamiki, obejmującego dynamikę nośnego układu manipulacyjnego (NUM) i napędów. NiezaleŜnie od formalizmu przyjętego za podstawę do ułoŜenia równań dynamiki NUM RP, ich forma wektorowa moŜe być przedstawiona w formie macierzowej [2]: , (7) gdzie: • H (q ) – macierz bezwładności UM RP; • h(q, q& ) – wektor – macierz sił odśrodkowych Corio- lisa i grawitacyjnych; • P – wektor momentów uogólnionych, przyłoŜonych do członów; określenie momentów uogólnionych jest moŜliwe z wykorzystaniem liniowych modeli dynamiki [2] części napędowej RP (8) (8) gdzie: x – wektor przedstawienia współrzędnych uogólnio• nych napędu: silnika prądu stałego i wektor sił uogólnionych P odpowiednio; u – wektor sterowania napędów; • • А, b, f – macierz i wektory konstrukcyjnych lub elektrycznych parametrów napędów, których jawna postać zaleŜy od typu napędów. Oprócz określonych А, b, f w [2] rozpatrzono model linearyzacji napędu pneumatycznego z regulacją dławieniową. Pełny model dynamiki UM RP w formie macierzowej (9) z uwzględnieniem ograniczeń sterowania (10) moŜna przedstawić w następujący sposób: x = {s , s&, i} , na- (9) −ui ,max , ui < −ui ,max N (ui ) = ui , − ui ,max ≤ ui ≤ ui ,max u i ,max , ui > ui ,max , gdzie: x = [q, q&, x0 ] (10) – wektor stanu UM RP. Zgodnie z [2] wyraŜenie (9) w przestrzeni stanów UM RP x względem sterowania u moŜna przepisać w formie macierzowej: u = ϕ ( x) = (β ( x)T β ( x))−1 β ( x)T ( x& − α ( x)) gdzie: • α ( x) , β ( x) ,(11) – rozszerzone macierze w postaci: α ( x) = ( Ax + Fh( x))( I n − [[0 H (q)] ⋅ [ F ] 0]) −1 β ( x) = B( I n − [[0 H (q )] ⋅ [ F ] 0]) −1 ; In – jednostkowa macierz diagonalna wymiarowości n; [⋅] T – operacja transpozycji macierzy. Przy poszukiwaniu optymalnej trajektorii w ściętej przestrzeni konfiguracyjnej, otrzymanej na etapie kinematycznego planowania ruchu, stosuje się metodę dyskretnego programowania dynamicznego z uwzględnieniem (11). Jako funkcję celu rozpatrzono minimum obszaru ruchów UM RP: I I i =1 i =1 W = ∑ Fs ( xsi , usi −1 ) = ∑ wi (qsi +1 − qsi ) , (12) I gdzie: x& = Ax + bu + fP , x = {l , l&, ∆p} x& = Ax + bN (u) + fH (q)q&& + fh(q, q& ) ; i =1, I ; j =1, J ; k =1, K (6) H (q )q&& + h(q, q& ) = P pędu hydraulicznego i pneumatycznego wi = ∑ ml q& l2max / 2 . l =i Ruch UM między s podstawowymi punktami trajektorii w zdyskretyzowanej przestrzeni stanów, stosując (10) i (11) moŜna przedstawić następującą zaleŜnością: 21 1/2009 TECHNOLOGIA I AUTOMATYZACJA MONTAśU ( ) ( ) x i (s + 1) = x i (s ) + Tα x i (s ) + β x i (s ) u i (s ) = ( ) = f x si , u si . (13) UM RP. Jako funkcje celu mogą być rozpatrzone inne, wyraŜające energetyczne i czasowe nakłady na realizację ruchów. LITERATURA Rozpatrując graf ruchu wektora współrzędnych uogólnionych od jego stanu końcowego w (k+1)-tym punkcie węzłowym do k-go i stosując zasadę optymalności, kolejno określa się drogę, na kaŜdym kroku której od stanu końcowego x wartość funkcji nakładów jest minimalna: ( ) O s −1 x si −1 = 1. 2. 3. ( ( ( )) ( ( = min min Fs f s −1 x si −1 , u si −1 + O s f s −1 x si −1 , u si −1 u si −1∈U s −1 ))) 4. (14) gdzie: • U s−1 – obszar dopuszczalnych wartości wektora ste5. rowania na s-ym kroku. Przy poszukiwaniu optymalnej wartości Os −1 ( x i s −1 ), stosując wyraŜenie (11), na s-ym kroku występuje sterowanie optymalne u( xsi −1 ) = ϕ ( xsi −1 ) , (15) 6. których ogół przy wszystkich s i k daje kolejność optymalnych sterowań us ,k s =1, S ; k =1, K . WNIOSKI Rozpatrzona kolejność etapów i zadań przy dalszej algorytmicznej i programowej realizacji pozwoli uzyskać suboptymalne rozwiązanie zagadnienia planowania ruchu Тимофеев А. В. Адаптивные робототехнические комплексы. – Л.: Машиностроение. Ленингр. отдние, 1988. – 332с.: ил. Вукобратович М. Стокич Д.: Управление манипуляционными роботами: теория и прило-жения. – М.: Наука, 1985. – 384. Кобринский А. А., Кобринский А. Е.: К построению движений манипуляционных систем. – Докл.АН СССР. – 1975. – т.224. – № 4. – С. 1030. Механика промышленных роботов: Учеб. пособие для втузов: в 3т. /Под ред К. И. Фролова, Е. И. Воробьева. Кн. 1: Кинематика и динамика / Е. И. Воробьев, С. А. Попов, Г. И. Шевелева. – М.: Высш. шк., 1988. – 304с. Богдановський М. В., Кирилович В. А., Ковбаса Н. А., Нужда Т. Е.: Методика автоматизованого кінематичного формування програмних траєкторії переміщення схвату промислового робота при синтезі роботизованих механоскладальних технологій // Вісник ЖДТУ. Технічні науки. – 2004. –№4(31). – С. 92-101. Малышев В. А., Тимофеев А. В.: Алгоритмы построения программных движений мани-пуляторов с учетом конструктивных ограничений и препятствий. // Изв. АН СССР. Техническая кибернетика. – 1978. – №6. – С. 64–73. ___________________ Doc. dr inŜ. V. Kyrylovich oraz dr inŜ. M. Bogdanowski są pracownikami śytomirskiego Instytutu InŜymieryjno-Technicznego w śytomierzu, Ukraina, e-mail: kirin [email protected] NOWE KSIĄśKI W Wydawnictwie Naukowym Instytutu Technologii Eksploatacji PIB w Radomiu wydano w 2008 r. ksiąŜkę „Teoria i InŜynieria Systemów – Zasady i zastosowanie myślenia systemowego”. KsiąŜka opracowana przez prof. Czesława Cempela jest podręcznikiem akademickim dla studentów i doktorantów wydziałów politechnicznych. Główne rozdziały ksiąŜki: Przedmowa. 1. Teoria i InŜynieria Systemów – wprowadzenie potrzeby. 2. Myślenie systemowe, drogi rozwoju i stan obecny. 3. Podstawowe byty i idee teorii systemów – systemy, holony i ich własności. 4. Cykl Ŝycia systemów. 5. Modele systemów i ich zachowanie. 6. Innowacyjne rozwiązywanie problemów 22 7. 8. Projektowanie koncepcyjne systemów Wybór rozwiązań systemowych – ocena, optymalizacja, decyzja. 9. InŜynieria wirtualna w inŜynierii systemów. 10. Wiedza w gospodarce i w społeczeństwie. 11. Zakończenie 12. Literatura i źródła. 13. Indeks. Załączniki. KsiąŜka formatu B5 w twardej okładce zawiera 291 stron, 152 pozycje wykorzystanej literatury, 132 rysunki, 7 kolorowych ilustracji i kosztuje w sprzedaŜy wysyłkowej 35 zł (e-mail: [email protected]). Opracował: Jerzy Łunarski