Politechnika Śląska, Wydział
Politechnika Śląska, Wydział
Elektryczny
Elektryczny
KATEDRA MECHATRONIKI
KATEDRA MECHATRONIKI
Napęd Elektryczny
Napęd Elektryczny
Robotów
Robotów
Wykład nr 03 i 04
Wykład nr 03 i 04
dr inż. Tomasz Trawiński
Energia kinetyczna i potencjalna, równania Eulera-Lagrange’a
Energia kinetyczna
Energia kinetyczna
• Energia kinetyczna obiektu jest określana następująco:
B
T
B
T
k
dm
z
y
x
v
z
y
x
v
dxdydz
z
y
x
z
y
x
v
z
y
x
v
E
,
,
,
,
2
1
,
,
,
,
,
,
2
1
z
x
y
z
y
x ,
,
B
B
m
dxdydz
z
y
x
)
,
,
(
• Masa obiektu ograniczonego objetością B:
Jakaś
bryła
Współrzędne środka masy obiektu
Współrzędne środka masy obiektu
• Jeśli ciało o objętości B wykonuje pewien ruch w przestrzeni
trójwymiarowej, to różne jego punkty poruszają się z różnymi
prędkościami. Aby podać względnie prostą zależność na prędkość
punktu obiektu należy wyrazić ją względem środka ciężkości obiektu.
• Współrzędne środka masy definiowane są następująco:
B
c
xdm
m
x
1
B
c
ydm
m
y
1
B
c
zdm
m
z
1
Współrzędne środka masy obiektu
Współrzędne środka masy obiektu
• Lub jeśli zdefiniujemy wektor środka masy r
c
o współrzędnych
trójwymiarowych i wektor r współrzędnych punktu obiektu, to:
B
c
rdm
m
r
1
z
x
y
z
y
x ,
,
B
r
c
r
Wektor
współrzędnyc
h punktu ciała
Wektor
współrzędnyc
h środka
ciężkości ciała
Układ współrzędnych o środku w środku ciężkości
Układ współrzędnych o środku w środku ciężkości
obiektu
obiektu
• Wprowadźmy układ współrzędnych o środku pokrywającym się ze środkiem
ciężkości ciała.
• Jeśli ciało będzie się poruszać to prędkość dowolnego obiektu ciała będzie wynosić:
r
S
v
v
c
)
(
Prędkość
początku
układu
współrzędnyc
h O
c
r
v
v
c
• Gdybyśmy chcieli obliczyć prędkość
punktu względem ruchomego układu, to
należy:
r
R
R
v
R
v
R
T
T
c
T
T
z
x
y
r
c
r
c
y
c
x
c
z
Energia kinetyczna
Energia kinetyczna
• Jeśli wszystkie wektory wyrazimy względem układu ruchomego, to można
stosować do opisy ruchu punktu ciała wyrażenie:
• Energię kinetyczną obliczamy następująco:
B
c
T
c
k
dm
r
S
v
r
S
v
E
)
(
)
(
2
1
• Co daje nam cztery całki:
m
v
v
dm
v
v
c
T
c
B
c
T
c
2
1
2
1
1)
r
S
v
v
c
)
(
Składnik
przesunięciowy
energii kinetycznej
Energia kinetyczna
Energia kinetyczna
0
2
1
2
1
B
T
c
B
T
c
rdm
S
v
rdm
S
v
2)
3)
0
2
1
2
1
B
T
c
T
B
c
T
T
dm
r
v
S
dm
v
r
S
4)
B
T
T
rdm
S
S
r
2
1
Ta całka wynosi
zero
I ta całka
wynosi zero
Energia kinetyczna
Energia kinetyczna
• Gdzie:
I
JS
S
Tr
dm
rr
J
dm
S
r
r
S
Tr
BA
Tr
AB
Tr
ab
Tr
b
a
dm
r
S
S
r
T
T
B
T
B
b
T
T
a
T
T
B
b
a
T
T
2
1
2
1
2
1
2
1
0
0
0
1
2
1
3
2
3
S
dm
z
yzdm
xzdm
yzdm
dm
y
xydm
xzdm
xydm
dm
x
J
2
2
2
dm
x
y
yzdm
xzdm
yzdm
dm
z
x
xydm
xzdm
xydm
dm
z
y
I
2
2
2
2
2
2
Składnik obrotowy
energii kinetycznej
Energia kinetyczna
Energia kinetyczna
I
v
mv
E
T
c
T
c
k
2
1
2
1
Uwaga:
Prędkość kątowa występująca we wzorze powyższym jest wyrażona
względem układu współrzędnych związanych z obiektem
(przegubem). Jeśli będziemy mieli prędkość kątową
0
obiektu
(przegubu) wyrażoną w inercjalnym układzie współrzędnych
(bazowym układzie współrzędnych) to musimy podstawić za:
0
T
R
Energia
przesunięciow
a
Energia
obrotowa
Energia kinetyczna – manipulator o n-członach
Energia kinetyczna – manipulator o n-członach
• Prędkości liniowe i kątowe dowolnego punktu położonego na dowolnym
członie mogą być wyrażone za pomocą Jacobianu i pochodnych zmiennych
przegubowych.
q
q
J
v
ci
v
ci
q
q
J
q
R
i
T
i
i
Środek
ciężkości „ci”
członu „i”
Człon „i-
1”
Człon „i”
Energia kinetyczna – manipulator o n-członach
Energia kinetyczna – manipulator o n-członach
• Podstawiając wyrażenia na Jacobiany prędkości liniowej środka ciężkości
członu (lub innego punktu) oraz prędkości kątowej do wyrażenia na
energię kinetyczną manipulatora n-członowego otrzymujemy ostatecznie:
q
q
J
q
R
I
q
R
q
J
q
J
q
J
m
q
E
n
i
T
i
i
i
T
v
T
v
i
T
k
i
i
ci
ci
1
)]
(
)
(
)
(
)
(
)
(
)
(
[
2
1
• A w zapisie
macierzowym:
q
q
D
q
E
T
k
)
(
2
1
Macierz bezwładnościowa, jest to
macierz symetryczna i dodatnio
określona
Energia potencjalna
Energia potencjalna
• Dla dynamiki sztywnej jedynym źródłem energii potencjalnej jest siła
ciężkości g (wektor sił ciężkości w bazowym układzie współrzędnych):
m
r
g
rdm
g
rdm
g
E
c
T
B
T
B
T
p
• Energia potencjalna zależy tylko od zmiennych przegubowych i jest
niezależna od ich pochodnych.
)
(q
E
E
p
p
Równania Eulera Lagrange’a
Równania Eulera Lagrange’a
• Lagrangian to:
n
j
j
kj
k
q
q
d
q
L
)
(
)
(
)
(
2
1
q
E
q
q
q
d
E
E
L
p
n
i
n
j
j
i
ij
p
k
n
i
n
j
j
i
i
kj
n
j
j
kj
n
j
j
kj
n
j
j
kj
k
q
q
q
q
d
q
q
d
q
dt
q
d
d
q
q
d
q
L
dt
d
)
(
)
(
)}
(
{
)
(
j
k
k
q
L
q
L
dt
d
Równania Eulera Lagrange’a
Równania Eulera Lagrange’a
• Pochodna cząstkowa Lagrangianu po zmiennej przegubowej wynosi:
k
p
n
i
n
j
j
i
k
ij
k
q
q
E
q
q
q
q
d
q
L
)
(
)
(
2
1
• Po zgrupowaniu czynników równanie Eulera Lagrange’a przyjmuje postać:
k
k
p
n
i
n
j
j
i
k
ij
n
i
n
j
j
i
i
kj
n
j
j
kj
q
q
E
q
q
q
q
d
q
q
q
q
d
q
q
d
)
(
)
(
2
1
)
(
)
(
Symbole Christoffela
Symbole Christoffela
• Po zgrupowaniu:
k
ij
j
ki
i
kj
ijk
q
q
d
q
q
d
q
q
d
c
)
(
)
(
)
(
2
1
• Składnik środkowy powyższego równania (pod znakiem podwójnej sumy)
może być rozpisany do postaci:
k
k
p
j
i
n
i
n
j
k
ij
i
kj
n
j
j
kj
q
q
E
q
q
q
q
d
q
q
d
q
q
d
)
(
)
(
2
1
)
(
)
(
Równania Eulera Lagrange’a – postać macierzowa
Równania Eulera Lagrange’a – postać macierzowa
• Ostatecznie postać macierzowa równań E-
L:
)
(
)
,
(
)]
(
[
q
g
q
q
q
C
q
q
D
symetryczna nn
macierz
zawierająca
momenty
bezwładności
kolejnych
członów
manipulatora
względem
poszczególnych
osi,
momentów sił
odśrodkowych i
Coriollis’a,
wektor
momentów
odgrawitacyjnyc
h
Wektor
uogólnionych sił
wymuszających
Elementy macierzy sił odśrodkowych i Coriolisa
Elementy macierzy sił odśrodkowych i Coriolisa
• Elementy macierzy C są obliczane w następujący sposób:
q
q
q
d
q
q
d
q
q
d
q
q
c
c
n
i
k
ij
j
ki
i
kj
n
i
ijk
kj
1
1
)
(
)
(
)
(
2
1
)
(
Uwaga:
Elementy macierzy C, przemnożone przez kwadrat pochodnej
zmiennej przegubowej są tzw. czynnikami odśrodkowymi,
Elementy macierzy C, przemnożone przez iloczyn pochodnych
zmiennych uogólnionych (ale o różnych indeksach) są tzw.
czynnikami Coriolisa
Algorytm postępowania przy formułowaniu równań
Algorytm postępowania przy formułowaniu równań
dynamiki
dynamiki
Opisać łańcuch kinematyczny i
sformułować tabelę parametrów
kinematycznych
1
Sformułować wszystkie macierze
przekształceń jednorodnych A
i
i T
2
Sformułować wszystkie macierze przekształceń
jednorodnych A
ci
, dla środków ciężkości
poszczególnych członów. UWAGA
3
Algorytm postępowania przy formułowaniu równań
Algorytm postępowania przy formułowaniu równań
dynamiki
dynamiki
Obliczyć macierze Jacobianowe dla środków ciężkości.
Ale każdy kolejny, bieżący środek ciężkości traktujemy
jako końcówkę manipulatora.
4
Obliczyć przesunięciowe i obrotowe
składniki energii kinetycznej
5
Sformułować macierz
bezwładnościową „D”
6
Algorytm postępowania przy formułowaniu równań
Algorytm postępowania przy formułowaniu równań
dynamiki
dynamiki
Obliczyć na podstawie elementów macierzy
bezwładnościowej symbole Christoffela.
7
Obliczyć elementy macierzy C
8
Sformułować wektor sił
odgrawitacyjnych
9
Zapisać równanie
ostateczne
10
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
x
x
0
0
y
y
0
0
x
x
1
1
z
z
1
1
z
z
2
2
x
x
2
2
a
a
1
1
a
a
2
2
1
1
2
2
Czło
Czło
n
n
a
a
i
i
i
i
d
d
i
i
i
i
1
1
a
1
0
0
1
2
2
a
2
0
0
2
1
0
0
0
0
1
0
0
sin
0
cos
sin
cos
0
sin
cos
1
1
1
1
1
1
1
1
1
0
a
a
T
1
0
0
0
0
1
0
0
sin
)
sin(
0
)
cos(
)
sin(
cos
)
cos(
0
)
sin(
)
cos(
1
1
2
2
1
2
1
2
1
1
1
2
2
1
2
1
2
1
2
0
a
a
a
a
T
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
x
x
0
0
x
x
1
1
z
z
1
1
z
z
2
2
a
a
c1
c1
a
a
c2
c2
1
1
2
2
z
z
c1
c1
z
z
c2
c2
x
x
2
2
Macierze A
ci
, dla środków
ciężkości
3
m
m
1
1
m
m
2
2
1
0
0
0
0
1
0
0
sin
0
cos
sin
cos
0
sin
cos
1
1
1
1
1
1
1
1
1
c
c
c
a
a
A
1
0
0
0
0
1
0
0
sin
0
cos
sin
cos
0
sin
cos
2
2
2
2
2
2
2
2
2
c
c
c
a
a
A
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
x
x
0
0
x
x
1
1
z
z
1
1
z
z
2
2
a
a
c1
c1
a
a
c2
c2
1
1
2
2
z
z
c1
c1
z
z
c2
c2
x
x
2
2
Macierze T
ci
, dla środków
ciężkości
3
m
m
1
1
m
m
2
2
1
0
0
0
0
1
0
0
sin
0
cos
sin
cos
0
sin
cos
1
1
1
1
1
1
1
1
1
c
c
c
a
a
T
1
0
0
0
0
1
0
0
sin
)
sin(
0
)
cos(
)
sin(
cos
)
cos(
0
)
sin(
)
cos(
1
1
2
2
1
2
1
2
1
1
1
2
2
1
2
1
2
1
2
1
0
2
0
c
c
c
c
c
c
a
a
a
a
A
T
T
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
x
x
0
0
x
x
1
1
z
z
1
1
z
z
2
2
a
a
c1
c1
a
a
c2
c2
1
1
2
2
z
z
c1
c1
z
z
c2
c2
m
m
1
1
m
m
2
2
Macierze Jacobianowe dla
środków ciężkości.
4
1
1
1
i
i
ci
i
i
z
o
o
z
J
0
0
0
0
cos
sin
1
1
1
1
1
c
c
vc
a
a
J
0
0
0
1
0
0
1
c
J
z
z
0
0
x
x
0
0
a
a
c1
c1
1
1
z
z
c1
c1
m
m
1
1
0
0
1
0
1
z
o
o
z
c
c
J
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
Macierze Jacobianowe dla
środków ciężkości.
4
0
0
0
0
)
cos(
cos
)
sin(
sin
2
1
2
1
1
2
1
2
1
1
1
c
c
v
a
a
a
a
J
0
0
2
0
1
z
o
o
z
c
J
0
)
cos(
)
sin(
0
0
0
2
1
2
2
1
2
2
c
c
vc
a
a
J
Policzony dla
przegubu
pierwszego, ale
końcówką jest
drugi środek
ciężkości
1
1
2
1
2
z
o
o
z
c
c
J
z
z
0
0
x
x
0
0
x
x
1
1
z
z
1
1
z
z
2
2
a
a
c2
c2
1
1
2
2
z
z
c2
c2
m
m
2
2
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
x
x
0
0
x
x
1
1
z
z
1
1
z
z
2
2
a
a
c2
c2
1
1
2
2
z
z
c2
c2
m
m
2
2
Macierze Jacobianowe dla
środków ciężkości.
4
1
0
0
1
0
0
2
c
J
0
)
cos(
)
sin(
0
)
cos(
cos
)
sin(
sin
2
1
2
2
1
2
2
1
2
1
1
2
1
2
1
1
2
1
2
c
c
c
c
vc
v
vC
a
a
a
a
a
a
J
J
J
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
x
x
0
0
x
x
1
1
z
z
1
1
z
z
2
2
a
a
c1
c1
a
a
c2
c2
1
1
2
2
z
z
c1
c1
z
z
c2
c2
m
m
1
1
m
m
2
2
Obliczyć przesunięciowe i obrotowe
składniki energii kinetycznej
5
q
q
J
q
J
m
q
E
n
i
v
T
v
i
T
kp
ci
ci
1
)]
(
)
(
[
2
1
q
a
m
a
a
m
a
m
a
a
m
a
m
a
m
a
a
m
a
m
a
m
q
E
c2
c2
c2
c2
c2
c2
c2
c
T
kp
2
2
2
1
2
2
2
2
1
2
2
2
2
1
2
2
1
2
2
2
2
1
1
1
cos
cos
cos
2
0
0
0
2
1
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
x
x
0
0
x
x
1
1
z
z
1
1
z
z
2
2
a
a
c1
c1
a
a
c2
c2
1
1
2
2
z
z
c1
c1
z
z
c2
c2
m
m
1
1
m
m
2
2
Obliczyć przesunięciowe i obrotowe
składniki energii kinetycznej
5
q
q
J
q
R
I
q
R
q
J
q
E
n
i
T
i
i
i
T
T
ko
i
i
1
)]
(
)
(
)
(
)
(
[
2
1
q
I
I
I
I
I
q
E
T
ko
2
2
2
2
1
0
0
0
2
1
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
x
x
0
0
x
x
1
1
z
z
1
1
z
z
2
2
a
a
c1
c1
a
a
c2
c2
1
1
2
2
z
z
c1
c1
z
z
c2
c2
m
m
1
1
m
m
2
2
Sformułować macierz
bezwładnościową „D”
6
q
q
q
E
T
k
)
(
2
1
D
2
2
2
2
2
1
2
2
2
2
2
1
2
2
2
2
1
2
1
2
2
1
2
2
2
2
1
cos
cos
cos
2
I
a
m
I
a
a
m
a
m
I
a
a
m
a
m
I
I
a
m
a
a
m
a
m
a
m
c2
c2
c2
c2
c2
c2
c2
c1
D
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
x
x
0
0
x
x
1
1
z
z
1
1
z
z
2
2
a
a
c1
c1
a
a
c2
c2
1
1
2
2
z
z
c1
c1
z
z
c2
c2
m
m
1
1
m
m
2
2
Obliczyć symbole
Christoffela.
7
k
ij
j
ki
i
kj
ijk
q
q
d
q
q
d
q
q
d
c
)
(
)
(
)
(
2
1
q
q
c
c
n
i
ijk
kj
1
)
(
0
sin
)
(
sin
sin
1
2
1
2
1
2
2
1
2
2
2
1
2
a
a
m
a
a
m
a
a
m
=
c2
c2
c2
C
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
Obliczyć symbole
Christoffela, w Matlabie.
7
k
ij
j
ki
i
kj
ijk
q
q
d
q
q
d
q
q
d
c
)
(
)
(
)
(
2
1
for i=1:2,
for j=1:2,
for k=1:2,
eval([' c' num2str(i) num2str(j) num2str(k)
'= 1/2*(diff(D(k,j),Q' num2str(i) ')+diff(D(k,i),
Q' num2str(j) ')-diff(D(i,j),Q' num2str(k) '))']);
end
end
end
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
Obliczyć symbole
Christoffela, w Matlabie.
7
syms dq1 dq2
C00=0;
for k=1:2,
C00=0;
for j=1:2,
C00=0;
for i=1:2,
eval([ 'C' num2str(k) num2str(j) '=c' num2str(i) num2str(j) num2str(k)
'*dq' num2str(i) '+C00;']);
eval([ 'C' num2str(k) num2str(j) '=simple(' 'C' num2str(k) num2str(j) ');' ]);
eval([ 'C00=C' num2str(k) num2str(j) ';']);
end
end
end
C=[C11 C12 ;C21 C22 ]
q
q
c
c
n
i
ijk
kj
1
)
(
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
Sformułować wektor sił
odgrawitacyjnych
9
))
sin(
sin
(
sin
2
1
2
1
1
2
1
1
1
2
1
c
c
a
a
g
m
ga
m
V
V
V
z
z
0
0
z
z
1
1
a
a
c1
c1
a
a
c2
c2
1
1
2
2
m
m
1
1
m
m
2
2
2
1
)
(
V
V
G
Przykład 1. Manipulator płaski z łokciem
Przykład 1. Manipulator płaski z łokciem
z
z
0
0
z
z
1
1
a
a
c1
c1
a
a
c2
c2
1
1
2
2
m
m
1
1
m
m
2
2
Zapisać równanie
ostateczne
10
e2
e1
T
T
=
G
C
D
2
1
2
1
G
C
D
2
1
1
2
1
e2
e1
T
T
=
Przykład 2. Noga Oktopoda
Przykład 2. Noga Oktopoda
Przykład 2. Noga Oktopoda
Przykład 2. Noga Oktopoda
z
z
1
1
z
z
2
2
d
d
1
1
a
a
1
1
a
a
2
2
a
a
3
3
z
z
0
0
x
x
0
0
1
1
2
2
3
3
z
z
1
1
z
z
0
0
1
1
Człon
Człon
a
a
i
i
i
i
d
d
i
i
i
i
1
1
a
1
-/2
d
1
1
2
2
a
2
0
0
2
3
3
a
3
0
0
3