Robotyka.com
Wiadomości Firmy Placówki Produkty Wydarzenia Teoria Konstrukcje
Home Zaloguj się Rejestracja
English version Deutsche Version
O nas Oferta Linki Kontakt
Producenci Szkolenia Oferty pracy Publikacje Zapytania ofertowe Forum
poprzednia spis treści następna

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 E i 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:

(6.1)

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

(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:

(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:

(6.4)

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

                                                                                       (6.5)

gdzie g - 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:

(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

 

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 J1 i 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).

 

Rys.6.1 Manipulator dwuczłonowy

 

 

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:

Wyznaczenie energii kinetycznej członu II:

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

Całkowita energia kinetyczna:

Wyznaczenie energii potencjalnej członu I:

Wyznaczenie energii potencjalnej członu II:

gdzie g to przyspieszenie ziemskie.

Całkowita energia potencjalna:

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

Wyznaczenie odpowiednich pochodnych zgodnie ze wzorem (6.2):

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

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 w tabeli 6.1 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]);

Tabela 6.1 Zapis funkcji w programie MapleTM dla przykładu 6.1.

 

poprzednia spis treści następna
Partner serwisu
Ciekawy produkt
Partnerzy
Czasopisma
Newsletter
Zawsze aktualne informacje.
Zapisz się na newsletter Robotyka.com.

E-mail:


O nas | Oferta | Kontakt RSS Robotyka.com
tel.: (12) 410 02 87, fax: (12) 410 87 50, e-mail: info@robotyka.com
Projekt i realizacja: STUDIO 47