PATRONI ROBOTYKI:
 

TEORIA ROBOTYKI

6.1 Równania Lagrange'a II rodzaju

Pierwszym krokiem w kierunku zapisu równań dynamiki jest przyjęcie współrzędnych uogólnionych q1..qn, które w pełni określają położenie układu, a Ei V określono jako całkowitą energię kinetyczną i potencjalną układu. Następnie wprowadzono pojęcie funkcji Lagrange'a (potencjału kinetycznego) w postaci:

http://www.robotyka.com/teoria/grafika/image464.gif

(6.1)

Postać dynamicznych równań ruchu zapisano następująco:

http://www.robotyka.com/teoria/grafika/image465.gif

(6.2)

Gdzie Qi to uogólniona siła odpowiadająca uogólnionemu przemieszczeniu qi. Siła ta może być określona  przez wyznaczenie pracy przygotowanej wykonanej przez siły czynne (niezachowawcze) działające na układ.

Energię kinetyczną członu "i" opisano następującym wyrażeniem:

http://www.robotyka.com/teoria/grafika/image466.gif

(6.3)

Gdzie mi - masa członu, vi - prędkość liniowa członu, wi - prędkość kątowa członu, Ji - moment bezwładności, określony względem prostej przechodzącej przez środek masy i wyrażony w układzie podstawy. Pierwszy składnik wzoru (6.3) oznacza energię kinetyczną ruchu postępowego z prędkością środka masy, a drugi - energię kinetyczną ruchu obrotowego. Wzór (6.3) obowiązuje gdy człon i wykonuje ruch postępowy i obrotowy w innym przypadku należy go odpowiednio zmodyfikować.

Całkowita energia kinetyczna manipulatora jest sumą energii kinetycznych poszczególnych członów:

http://www.robotyka.com/teoria/grafika/image467.gif

(6.4)

Energię potencjalną członu "i" zapisano następująco:

http://www.robotyka.com/teoria/grafika/image468.gif

(6.5)

Gdzie - przyspieszenie ziemskie, hi - wysokość od zerowego poziomu odniesienia energii potencjalnej.

Analogicznie całkowita energia potencjalna manipulatora jest sumą energii potencjalnej poszczególnych członów:

http://www.robotyka.com/teoria/grafika/image469.gif

(6.6)

Do sił uogólnionych Qi zalicza się wszystkie siły i momenty działające na człony, z wyjątkiem sił ciężkości i bezwładności. Przyjęto, że w połączeniach ruchowych działają siły i momenty napędowe t=t1..tn, a zewnętrzne siły czynne działają na człon roboczy. Siła uogólniona może być wyznaczona przez obliczenia pracy przygotowanej wykonanej przez te siły.

 Przykład 6.1

http://www.robotyka.com/teoria/grafika/image470.gif

Rysunek 6.1 Manipulator dwuczłonowy

Wyznaczyć dynamiczne równania ruchu dla manipulatora o dwóch stopniach swobody zilustrowanego na rys.6.1 jeżeli dane są momenty bezwładności Ji J2 względem osi   przechodzącej przez środek ciężkości poszczególnych elementów, masy m1, m2 elementów oraz stała odległość pomiędzy punktami A i D (oznaczona jako l1).

Rozwiązanie:

Pierwszym krokiem w zapisie dynamicznych równań ruchu jest przyjęcie współrzędnych jednorodnych, ponieważ analizowany manipulator może się obracać względem punktu A tak wiec pierwszą współrzędną będzie kąt obrotu q1.  Manipulator może również wysuwać drugi człon (ruch postępowy) na odległość l2 (odległość pomiędzy punktami A i E na rys.6.1). Odległość ta jest zmienna w czasie, co oznacza iż drugą współrzędną uogólnioną będzie właśnie l2.

Wyznaczenie energii kinetycznej członu I:

http://www.robotyka.com/teoria/grafika/image471.gif

Wyznaczenie energii kinetycznej członu II:

http://www.robotyka.com/teoria/grafika/image472.gif

Gdzie J1z i J2z to zastępcze momenty bezwładności liczone względem osi obrotu manipulatora.

Całkowita energia kinetyczna:

http://www.robotyka.com/teoria/grafika/image473.gif

Wyznaczenie energii potencjalnej członu I:

http://www.robotyka.com/teoria/grafika/image474.gif

Wyznaczenie energii potencjalnej członu II:

http://www.robotyka.com/teoria/grafika/image475.gif

Gdzie g to przyspieszenie ziemskie.

Całkowita energia potencjalna:

http://www.robotyka.com/teoria/grafika/image476.gif

Zapisanie funkcji Lagrange'a zgodnie ze wzorem (6.1):

http://www.robotyka.com/teoria/grafika/image477.gif

Wyznaczenie odpowiednich pochodnych zgodnie ze wzorem (6.2):

http://www.robotyka.com/teoria/grafika/image478.gif

http://www.robotyka.com/teoria/grafika/image479.gif

http://www.robotyka.com/teoria/grafika/image480.gif

http://www.robotyka.com/teoria/grafika/image481.gif

http://www.robotyka.com/teoria/grafika/image482.gif

http://www.robotyka.com/teoria/grafika/image483.gif

Zapisanie równań Lagrange'a dla analizowanego manipulatora zgodnie ze wzorem (6.2):

http://www.robotyka.com/teoria/grafika/image484.gif

http://www.robotyka.com/teoria/grafika/image485.gif

Powyższe dynamiczne równania ruchu umożliwiają analizę zadania prostego i odwrotnego dynamiki. Należy zauważyć, iż z pierwszego równania otrzymano matematyczny opis momentu jaki należy przyłożyć do członu I, natomiast z drugiego równania otrzymano opis siły jaką należy zastosować dla członu II. 

Poniżej przedstawiono zapis funkcji w programie MapleTM umożliwiający rozwiązanie powyższego zadania.  

>          restart:

>          with(linalg):with(difforms):

>             defform(theta[1]=scalar,d_theta1=scalar,d_lambda2=scalar,lambda[2]=scalar,J[1]=const,J[2]=const,m[1]=const,m[2]

=const,l[1]=const,g=const):

>          norma1:=d(theta[1])=d_theta1,d(lambda[2])=d_lambda2;

>          norma2:=d_theta1=d(theta[1]),d_lambda2=d(lambda[2]);

>          J[z1]:=J[1]+m[1]*l[1]^2;

>          E[1]:=combine(1/2*J[z1]*d(theta[1])^2,radical);

>          J[z2]:=J[2]+m[2]*lambda[2]^2;

>          E[2]:=combine(1/2*J[z2]*d(theta[1])^2+1/2*m[2]*d(lambda[2])^2,radical);

>          E:=E[1]+E[2];

>          V[1]:=m[1]*g*l[1]*sin(theta[1]);

>          V[2]:=m[2]*g*lambda[2]*sin(theta[1]);

>          V:=V[1]+V[2];

>          L:=subs(norma1,E-V);

>          dL_d_theta1:=diff(L,theta[1]);

>          dL_d_lambda2:=subs(norma2,diff(L,lambda[2]));

>          dL_d_dtheta1:=diff(L,d_theta1);

>          dL_d_dlambda2:=diff(L,d_lambda2);

>          d_dt_dL_d_dtheta1:=d(dL_d_dtheta1);

>          d_dt_dL_d_dlambda2:=d(dL_d_dlambda2);

>          r1:=subs(norma2,d_dt_dL_d_dtheta1-dL_d_theta1=tau[1]);

>          r2:=subs(norma2,d_dt_dL_d_dlambda2-dL_d_lambda2=tau[2]);