Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1...

68
FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Robotika sbírka řešených příkladů Autor textu: prof. Ing. František Šolc, CSc 2014 Komplexní inovace studijních programů a zvyšování kvality výuky na FEKT VUT v Brně OP VK CZ.1.07/2.2.00/28.0193

Transcript of Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1...

Page 1: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Robotika – sbírka řešených příkladů

Autor textu:

prof. Ing. František Šolc, CSc

2014

Komplexní inovace studijních programů a zvyšování kvality výuky na FEKT VUT v Brně OP VK CZ.1.07/2.2.00/28.0193

Page 2: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

2 FEKT VUT v Brně

Obsah

ÚVOD ......................................................................................................................................... 3

1. PŘÍKLAD – HOMOGENNÍ TRANSFORMACE .......................................................... 3

2. PŘÍKLAD – HOMOGENNÍ TRANSFORMACE .......................................................... 5

3. PŘÍKLAD – HOMOGENNÍ TRANSFORMACE - ORIENTACE .............................. 7

4. PŘÍKLAD – PŘÍMÁ ÚLOHA KINEMATIKY A JAKOBIÁN .................................. 11

5. PŘÍKLAD – PŘÍMÁ A INVERZNÍ ÚLOHA KINEMATIKY, JAKOBIÁN ............ 14

6. PŘÍKLAD – INVERZNÍ ÚLOHA KINEMATIKY ..................................................... 18

7. PŘÍKLAD – PŘÍMÁ ÚLOHA KINEMATIKY, VÝPOČET RYCHLOSTÍ ............. 21

8. PŘÍKLAD – PŘÍMÁ ÚLOHA KINEMATIKY, VÝPOČET ZRYCHLENÍ ............. 24

9. PŘÍKLAD – PŘÍMÁ ÚLOHA KINEMATIKY, VÝPOČET ZRYCHLENÍ ............. 26

10. PŘÍKLAD – PŘÍMÁ ÚLOHA KINEMATIKY, VÝPOČET ZRYCHLENÍ ............. 30

11. PŘÍKLAD – PŘÍMÁ ÚLOHA KINEMATIKY, VÝPOČET ZRYCHLENÍ ............. 32

12. PŘÍKLAD – PŘÍMÁ ÚLOHA KINEMATIKY, VÝPOČET ZRYCHLENÍ ............. 36

13. PŘÍKLAD – INVERZNÍ ÚLOHA KINEMATIKY, PLÁNOVÁNÍ DRÁHY ........... 39

14. PŘÍKLAD – INVERZNÍ ÚLOHA KINEMATIKY ..................................................... 45

15. PŘÍKLAD – INVERZNÍ ÚLOHA KINEMATIKY ..................................................... 48

16. PŘÍKLAD – DYNAMIKA .............................................................................................. 50

17. PŘÍKLAD – DYNAMIKA A PLÁNOVÁNÍ DRÁHY ................................................. 54

18. PŘÍKLAD – DYNAMIKA A PLÁNOVÁNÍ DRÁHY ................................................. 58

19. PŘÍKLAD – PLÁNOVÁNÍ DRÁHY ............................................................................. 63

20. PŘÍKLAD – PLÁNOVÁNÍ DRÁHY ............................................................................ 66

Page 3: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 3

Úvod

Následující text obsahuje řešené příklady z oblasti průmyslové robotiky. Jedná se o některé

řešené problémy kinematiky a dynamiky manipulátorů a jim podobných kinematických

řetězců. Jsou to především úlohy přímé a inverzní kinematiky. Uvedeny jsou také některé

úlohy plánování dráhy. Z oblasti dynamiky jsou uvedeny úlohy výpočtu potřebných výkonů

pro provedení předepsané manipulační operace. Uváděné příklady jsou vhodné pro vedení

numerických cvičení. Prakticky ve všech příkladech je pro numerické výpočty použit

software MATLAB a vzhledem k vyšší výpočetní náročnosti je v některých příkladech použit

pro výpočet jeho symbolický toolbox.

1. Příklad – Homogenní transformace

Na následujícím obrázku je nakreslen robot obsluhující pracoviště. S tělem robota je spojen

souřadný systém xyz0 umístěný pevně v rovině podlahy dílny tak, že rovina podlahy a rovina

xy0 jsou totožné.

Ve vzdálenosti 1m od robota je na podlaze umístěn stůl ve tvaru kvádru, s jehož horní hranou

je spojen souřadný systém xyz1 jehož počátek leží v rovině yz0 .

Na stole je položen kvádr, se kterým je spojen souřadný systém xyz2. Počátek tohoto systému

je umístěn na pracovní ploše stolu přesně v jejím středu. Kvádr má výšku 0,1m a rozměry ve

směru z2 0,2m a ve směru x2 0,3m.

Nad stolem je umístěna stereo kamera, se kterou je spojen souřadný systém xyz3 jehož počátek

je ve výšce 2m nad pracovní plochou stolu. Jeho osa z3 je totožná s osou y2, která je kolmá

k podlaze a pracovní ploše stolu.

Jednotlivé osy systémů jsou rovnoběžné, jak ukazuje následující obrázek.

Obr. 1.1 Robotické pracoviště

Page 4: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

4 FEKT VUT v Brně

Vypočítejte matice homogenních transformací mezi jednotlivými systémy a systémem xyz0.

Výpočet zdůvodněte kompozicí elementárních transformací (nestačí uvést jen výsledné

matice)

Řešení:

Matice homogenních transformací mezi jednotlivými systémy a systémem xyz0 získáme

kompozicí elementárních transformací (postupným pohybem systému xyz0 ), např.

H01=Trans(0;1;0.5)Roty(-90o)Rotx(-90

o)

H02=Trans(-0.5;1.5;0.5)Rotz(90o)Rotx(90

o)

H03=Trans((-0.5;1.5;2.5)Rotz(90o)Rotx180

o)

Elementární transformace jsou uvedeny ve skriptech Robotika. Po provedení výpočtu

dostaneme.

1000

5.2100

2001

5,0010

1000

5.0010

2001

5,0100

1000

5,0001

1100

0010

030201 HHH

Page 5: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 5

2. Příklad – Homogenní transformace

Pro konfiguraci pracoviště uvedenou v obrázku v předchozím příkladu určete souřadnice

horních rohů kvádru, který leží na stole, jak se jeví v systému stereo kamery xyz3. Výpočet

zdůvodněte.

Řešení:

Pozice jednotlivých bodů, které známe v souřadném systému xyz2, pi,2, přepočteme do

souřadného systému xyz3 nejsnadněji pomocí matice homogenní transformace H3,2. Tedy

pozice bodů v systému xyz3, pi,3, budou dány výrazem

2,2,33, ii pHp

Prvky matice homogenní transformace budou vektor posunutí d a matice rotace R.

10002,3

dRH

Vektor posunutí říká, jak posuneme systém xyz3 v jeho souřadnicích tak, aby počátky

posunutého systému a systému xyz2 byly stejné. Z geometrie obrázku je zřejmé, že musíme

provést posunutí v ose z systému xyz3 o 2m.

Vektor posunutí tedy bude

2

0

0

d

Vektor rotace říká jak odrotujeme systém xyz3 tak, aby jednotlivé osy odrotovaného systému

a systému xyz2 byly rovnoběžné. Z geometrie obrázku je zřejmé že musíme provést rotaci

okolo osy x systému xyz3 o -90o. Matice rotace tedy bude , viz skripta

010

100

001

R

Matice H3,2 bude tedy ve tvaru vhodném pro použití v MATLABu

H32=[1 0 0 0

0 0 1 0

0 -1 0 2

0 0 0 1];

Homogenní souřadnice jednotlivých bodů v systému xyz2 jsou dány geometrií zadání.

Uvedeny jsou ve tvaru vhodném pro použití v MATLABu

p12=[0 0.1 0 1]'

p22=[0.3 0.1 0 1]'

p32=[0.3 0.1 0.2 1]'

p42=[0 0.1 0.2 1]'

Homogenní souřadnice těchto bodů v systému xyz3 pak jsou

Page 6: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

6 FEKT VUT v Brně

p1,3 p2,3 p3,3 p4,3

H3,2*p1,2

H3,2*p2,2 H3,2*p3,2 H3,2*p4,2

0

0

1.9000

1.0000

0.3000

0

1.9000

1.0000

0.3000

0.2000

1.9000

1.0000

0

0.2000

1.9000

1.0000

Page 7: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 7

3. Příklad – Homogenní transformace - orientace

Na následujícím obrázku je nakresleno kinematické schéma robotu PUMA-560. Hodnoty

konstantních veličin jsou uvedeny v metrech a2=0.3; d2=0.15; d4=0.3; d6=0.1. Robot je

nakreslen v nulové poloze kloubových proměnných. Kladný směr pohybu všech kloubových

veličin je uvažován ve standardním smyslu. Jednotlivé kinematické členy mají přiděleny své

souřadné systémy.

a) Zdůvodněte, zda přidělení souřadných systémů odpovídá DH konvenci.

b) Vypočítejte homogenní transformaci H06 pro obecné hodnoty kloubových proměnných.

c) Vypočítejte polohu počátku O6 v pevném souřadném systému 0 pro hodnoty

kloubových proměnných oooooo 4509009090 654321

d) Nakreslete obrázek ukazující vzájemnou orientaci systémů 6 a 0.

Obr. 3.1 Robot Puma

Page 8: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

8 FEKT VUT v Brně

Řešení:

a)

Z obrázku je zřejmé, že pokud je robot v obecné poloze (např. všechny klouby jsou mírně

pootočeny o malý pozitivní úhel):

Systém 1 dostaneme ze systému 0 postupně potočením systému 0 v kloubu 1 okolo osy Z0

o úhel θ1 a otočením okolo osy X0 o úhel -90o.

Systém 2 dostaneme ze systému 1 postupně potočením systému 1 v kloubu 2 okolo osy Z1

o úhel θ2, posunutím podél Z1 o délku d2 a posunutím podél osy X1 o délku a2.

Systém 3 dostaneme ze systému 2 postupně potočením systému 2 v kloubu 3 okolo osy Z2

o úhel θ3 a otočením okolo osy X2 o úhel +90o.

Systém 4 dostaneme ze systému 3 postupně potočením systému 3 v kloubu 4 okolo osy Z3

o úhel θ4, posunutím podél osy Z3 o délku d4 a otočením kolem osy X3 o úhel -90o.

Systém 5 dostaneme ze systému 4 postupně potočením systému 4 v kloubu 5 okolo osy Z4

o úhel θ5 a otočením okolo osy X4 o úhel +90o.

Systém 6 dostaneme ze systému 5 postupně potočením systému 5 v kloubu 6 okolo osy Z5

o úhel θ6 a posunutím podél osy Z5 o délku d6.

Souřadné systémy jsou tedy přiděleny podle DH konvence a kinematika robotu je popsána

tabulkou

b)

Jednotlivé transformační matice tedy jsou

1 0, 0, 0,

0.1 1, 0, 0,

0 0, c6, s6,

0 0, s6,- c6,

1 0, 0, 0,

0 0, 1, 0,

0 c5,- 0, s5,

0 s5, 0, c5,

1 0, 0, 0,

0.3 0, 1,- 0,

0 c4, 0, s4,

0 s4,- 0, c4,

1 0, 0, 0,

0 0, 1, 0,

0 c3,- 0, s3,

0 s3, 0, c3,

1 0, 0, 0,

0.15 1, 0, 0,

0.3s2 0, c2, s2,

0.3c2 0, s2,- c2,

1 0, 0, 0,

0 0, 1,- 0,

0 c1, 0, s1,

0 s1,- 0, c1,

564534

231201

HHH

HHH

člen θi di ai αi

1 θ1 0 0 -90o

2 θ2 d2 a2 0

3 θ3 0 0 +90o

4 θ4 d4 0 -90o

5 θ5 0 0 +90o

6 θ6 d6 0 0

Page 9: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 9

Transformace H06 je dána součinem

56453423120106 HHHHHHH

Vzhledem ke složitosti celkového výrazu napíšeme výsledek ve tvaru

1 0, 0, 0,

0.1c50.3 c5, s5s6, s5c6,-

0.1s4s5 s4s5, c4c6,s4c5s6- c4s6,s4c5c6

0.1c4s5 c4s5, s4c6,-c4c5s6- s4s6,-c4c5c6

1 0, 0, 0,

0.3s2- c2c3,s2s3- 0, c2s3,-s2c3-

0.15c10.3s1c2 s1s2c3,s1c2s3 c1, s1s2s3,-s1c2c3

0.15s1-0.3c1c2 c1s2c3,c1c2s3 s1,- c1s2s3,-c1c2c3

06

360306

H

HHH

c)

Po dosazení numerických hodnot dostáváme

1.0000 0 0 0

0.3000 0.0000 0.7071- 0.7071-

0.4000- 1.0000- 0.0000- 0.0000

0.1500- 0.0000- 0.7071 0.7071-

1.0000 0 0 0

0.4000 1.0000 0 0

0 0 0.7071- 0.7071

0 0 0.7071- 0.7071-

1.0000 0 0 0

0.3000 0.0000 0 1.0000

0.0000 1.0000- 0.0000 0.0000

0.1500- 0.0000- 1.0000- 0.0000

06

360306

H

HHH

Souřadnice počátku O6 v sytému 0 jsou tedy [-0.15 -0.4 0.3]

d)

Orientace systému 6 je dána rotační maticí z H06. Představu o orientaci si můžeme udělat

podle velikosti směrových cosinů, nebo pomocí průmětů bázových vektorů systému 6 do

systému 0. Např. i0j6=0.7071 t. zn., že osy X0 a Y6 svírají úhel 450. Jednotlivé složky

vektoru j6 v systému 0 jsou dány 1. sloupcem rotační matice R06, t.j

j6=-0.7071i0 - 0.7071k0 atd. Orientace systému je nakreslena na následujícím obrázku.

Page 10: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

10 FEKT VUT v Brně

Obr. 3.2 Robot Puma s přidělenými souřadnými systémy

Obr. 3.3 Orientace zápěstí

Page 11: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 11

4. Příklad – Přímá úloha kinematiky a Jakobián

Na následujícím obrázku je nakreslen planární robot typu TTR.

Obr. 4.1 Kinematické schéma robota

Koncový bod H robotu se má pohybovat po kružnici konstantní rychlostí v=0,01m/s ve směru

šipky tak, že v čase t=0 je v bodě Z. Koncový člen robota má při tom být uvnitř kružnice a

v každém okamžiku musí být ke kružnici kolmý. Rozměry robota a souřadnice význačných

bodů jsou na obr. uvedeny v cm. Na obr. jsou také uvedeny kladné směry počítání kloubových

veličin. Koncový bod H má při pohybu oběhnout celý kruh. Kloubové souřadnice nemají

žádné omezení.

1. Vypočítejte přímou úlohu kinematiky pro tento robot t.j. funkce

),,(),,(),,( 321321321 qqqfqqqfyqqqfx kde x,y jsou souřadnice bodu H

v pracovním prostoru x,y robota. Uveďte analytické výrazy funkcí.

2. Vypočítejte inverzní úlohu kinematiky pro požadovaný pohyb, t.j. funkce

)()()( 321 tqtqtq , které zaručí požadovaný pohyb koncového členu robota. Uveďte

analytické výrazy a grafy těchto funkcí.

3. Vypočítejte Jakobián tohoto robota a určete jeho singulární konfiguraci.

Řešení:

1.

Vzhledem k jednoduchosti geometrie manipulátoru je úloha jednoduchá

Page 12: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

12 FEKT VUT v Brně

3

31

32

sin10

cos1020

q

qqy

qqx

(1)

2.

Inverzní úlohu můžeme řešit pomocí dekompozice tak, že pro danou žádanou orientaci

koncového členu φ najdeme žádanou polohu zápěstí a následně vypočítáme kloubové

souřadnice ramene q1 q2. Ze znalosti kloubových souřadnic ramene a žádané orientace

koncového členu pak najdeme kloubovou souřadnici zápěstí (viz příklady v elektronických

textech). V našem příkladu je však řešení inverzní úlohy jednoduché. Z (1) dostáváme

3

1

2

sin10

cos1020

q

yq

xq

(2)

Požadovaný pohyb koncového členu manipulátoru je rovněž jednoduchý

žž

žž

ž

Ry

Rx

tR

v

sin90

cos70

2

(3)

Po dosazení numerických hodnot

žž

žž

ž

y

x

t

sin3090

cos3070

0.03332

(4)

Dosazením (4) do (2) dostaneme požadované průběhy kloubových souřadnic, které zaručí

požadovaný pohyb

tq

q

q

ž

žžžž

žžžž

0.03332

sin2090sin10sin3090

cos2050cos1020cos3070

3

1

2

(5)

Koncový bod oběhne celý kruh za čas tk

sec 188.49562

vRtk (6)

Průběhy kloubových souřadnic podle (3) jsou uvedeny na následujícím obrázku

Page 13: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 13

Obr. 4.2 Časové průběhy kloubových souřadnic

3.

Jakobián manipulátoru (2D) získáme parciálními derivacemi rovnic (1)

100

cos1001

sin1010

3

3

q

q

J (7)

Jeho determinant je vždy -1 a jeho hodnost je tedy 3. Manipulátor tedy nemá žádnou

singulární konfiguraci.

0 20 40 60 80 100 120 140 160 180 200-100

-50

0

50

100

150

200

250

300

[sec]

q3 [

deg]

0 20 40 60 80 100 120 140 160 180 20070

75

80

85

90

95

100

105

110

[sec]

q1 [

cm

]

0 20 40 60 80 100 120 140 160 180 20030

35

40

45

50

55

60

65

70

[sec]

q2 [

cm

]

Page 14: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

14 FEKT VUT v Brně

5. Příklad – Přímá a inverzní úloha kinematiky, Jakobián

Na následujícím obrázku je uvedeno kinematické schéma antropomorfního manipulátoru.

Obr. 5.1 Kinematické schéma manipulátoru

Manipulátor je tvořen třemi rotačními klouby 1, 2, 3 s kloubovými proměnnými 321 .

Pevný souřadný systém dílny XYZ0 je umístěn v průsečíku os Z kloubů 1 a 2. Osy Z1 ,Z2

souřadných systémů 1 a 2 jsou umístěny v kloubech 2 a 3. Počátek souřadného systému 3 je

na konci ramene a3. Osy Z1 Z2 a Z3 jsou vzájemně rovnoběžné a jsou rovnoběžné s rovinou

XY0. Délky ramen jsou a2 a3 . Osy X2 a X3 jsou totožné s osami odpovídajících ramen.

1. Vyřešte přímou úlohu kinematiky, t.j. polohu koncového bodu P ramene a3 v pevném

souřadném systému XYZ0.

2. Kolik řešení má inverzní úloha kinematiky?

3. Vypočítejte Jakobián manipulátoru.

4. Nalezněte singulární konfigurace manipulátoru.

Page 15: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 15

Řešení:

1.

Z geometrie manipulátoru přímo vyplývá

Souřadnice z koncového bodu ramene

)sin()sin( 32322 aaz

Délka kolmého průmětu ramene do roviny XY0

)cos()cos( 32322 aar

Průměty r do os X0 a Y0 pak dávají souřadnice x a y koncového bodu.

1 2 2 3 2 3 1

1 2 2 3 2 3 1

cos( ) ( cos( ) cos( ))cos( )

sin( ) ( cos( ) cos( ))sin( )

x r a a

y r a a

2.

Pokud je koncový bod manipulátoru mimo osu Z0 má inverzní úloha 4 řešení, obr. 2.

Obr. 5.2 Možné řešení inverzní úlohy

Pokud je koncový bod manipulátoru na ose Z0, má úloha nekonečně mnoho řešení ( 1 ), viz

obr. 3.

Page 16: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

16 FEKT VUT v Brně

Obr. 5.3 Singulární poloha manipulátoru

3.

Jakobián manipulátoru

321

321

321

yyz

yyy

xxx

J

kde

2 2 3 2 3 1

1

2 2 3 2 3 1

1

1

2 2 3 2 3 1

2

2 2 3 2 3 1

2

2 2 3 2 3

2

3

3

( cos( ) cos( ))sin( )

( cos( ) cos( ))cos( )

0

( sin( ) sin( ))cos( )

( sin( ) sin( ))sin( )

cos( ) cos( )

sin(

xa a

ya a

z

xa a

ya a

za a

xa 2 3 1

3 2 3 1

3

3 2 3

3

)cos( )

sin( )sin( )

cos( )

ya

za

Po dosazení do J dostaneme ve zkrácené formě

Page 17: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 17

23323322

2313233221233221

2313233221233221

0

)()(

)()(

cacaca

ssasasascacac

scasasaccacas

J

4.

)()det( 23322332 cacasaaJ

Délky a2 a3 ramen jsou zřejmě nenulové. V singulární pozici je det(J)=0 což nastává

1) pro s3=0 t.j. o180nebo0 33

rameno manipulátoru je plně nataženo nebo naopak zkráceno a manipulátor je na okraji svého

pracovního prostoru.

2) pro 023322 caca

koncový bod manipulátoru se nachází na ose Zo a inverzní úloha má nekonečně mnoho řešení.

Page 18: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

18 FEKT VUT v Brně

6. Příklad – Inverzní úloha kinematiky

Na následujícím obrázku je uvedeno kinematické schéma antropomorfního manipulátoru

popsaného v předchozí domácí úloze.

Obr. 6.1 Kinematické schéma manipulátoru

Kladné směry počítání kloubových veličin jsou (z pohledu na obrázek):

1. kloub se otáčí proti směru hodinových ručiček. 2. a 3. kloub pohybují příslušnými rameny

nahoru.

1. kloub je nakreslen v poloze 01 . Ostatní dva klouby jsou v nulové poloze když jsou oba

členy a2 a a3 ve vodorovné poloze. (členy a2 a a3 jsou tedy nakresleny v poloze

00 32 ).

1. Vyřešte inverzní úlohu kinematiky, t.j. hodnoty kloubových souřadnic v závislosti na

poloze (x,y,z) koncového bodu P manipulátoru.

Inverzní úlohu řešte za předpokladu ),(2atana0 13 xy .

2. Nalezněte časový průběh kloubových veličin za předpokladu že délky ramen jsou

a2=a3=1m a koncový bod se pohybuje po přímce z bodu (0.1; -1;1) do bodu (0.1; 1;1)

konstantní rychlostí 1m/s. Časové průběhy vyjádřete graficky (alespoň v deseti časových

okamžicích).

Řešení:

1.

Ze zadání přímo vyplývá kloubová souřadnice 1

),(2atan1 xy (1)

Page 19: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 19

Další kloubové souřadnice vypočítáme z trojúhelníku, jehož odvěsny tvoří ramena

manipulátoru a přeponou je spojnice koncového bodu manipulátoru s počátkem souřadného

systému XYZ0 . Využijeme k tomu m.j. věty sinové a kosinové viz např. elektronický text

(Šolc: Robotika).

3 (2)

kde

),1(2atan 2 aa

cos2 2

2

2

2

22

3

2

2

aa

Laaa Pozn. věta cosinová

22 zRL

22 yxR

),(2atan2 Rz (3)

kde

)1,(2atan 2bb

sinsin3

L

ab Pozn. věta sinová

Pozn.

γ,α jsou úhly v trojúhelníku, jehož odvěsny tvoří ramena manipulátoru a přeponou je spojnice

koncového bodu manipulátoru s počátkem souřadného systému XYZ0.

2.

Ze zadání je zřejmé, že koncový bod manipulátoru se pohybuje po vodorovné přímce o délce

2m a požadovanou dráhu urazí za 2sec. Pro jednotlivé souřadnice tedy platí

1)(

0;21)(

1.0)(

tz

ttty

tx

Tyto hodnoty dosadíme do (1)-(3) a dostaneme grafické průběhy jednotlivých kloubových

veličin, které zaručí požadovanou trajektorii koncového bodu manipulátoru.

Page 20: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

20 FEKT VUT v Brně

Obr. 6.2 Průběhy kloubových veličin

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-100

-50

0

50

100

150

[sec]

[deg]

th1

th2

th3

Page 21: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 21

7. Příklad – Přímá úloha kinematiky, výpočet rychlostí

Na následujícím obrázku je uvedeno kinematické schéma antropomorfního manipulátoru.

Obr. 7.1 Kinematické schéma manipulátoru

Manipulátor je tvořen třemi rotačními klouby 1, 2, 3 s kloubovými proměnnými 321 .

Pevný souřadný systém dílny XYZ0 je umístěn v průsečíku os Z kloubů 1 a 2. Osy Z1 ,Z2

souřadných systémů 1 a 2 jsou umístěny v kloubech 2 a 3. Počátek souřadného systému 3 je

na konci ramene a3. Osy Z1 Z2 a Z3 jsou vzájemně rovnoběžné a jsou rovnoběžné s rovinou

XY0. Délky ramen jsou a2=a3=1m . Osy X2 a X3 jsou totožné s osami odpovídajících ramen.

(Viz předchozí úlohy)

Manipulátor je právě v pozici ;34.119;45,24;0 321

oo

1. Vypočítejte rychlost pohybu jeho koncového bodu (počátku souřad. syst. 3) v systému

XYZ0 , když rychlosti kloubových souřadnic jsou ;0;0/sec;450 321 o (Uveďte

složky i absolutní hodnotu vypočítané rychlosti).

2. Vypočítejte rychlost pohybu jeho koncového bodu (počátku souřad. syst. 3) v systém XYZ0

když rychlosti kloubových souřadnic jsou /sec;30/sec;20/sec;450 321

ooo

(Uveďte složky i absolutní hodnotu vypočítané rychlosti).

Řešení:

V tomto případě jde o řešení přímé úlohy kinematiky pro rychlost. Tato úloha je standardně

řešena pomocí Jakobiánu manipulátoru

Page 22: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

22 FEKT VUT v Brně

qqJX )( (1)

Jakobián byl vyřešen v minulých úlohách

23323322

2313233221233221

2313233221233221

0

)()(

)()(

cacaca

ssasasascacac

scasasaccacas

J (2)

Po dosazení parametrů a konkrétních hodnot kloubových proměnných dostaneme v notaci

MATLAB

a2=1

a3=1

s1=sin(0/180*pi)

c1=cos(0/180*pi)

s2=sin(24.45/180*pi)

c2=cos(24.45/180*pi)

s23=sin((24.45+119.34)/180*pi)

c23=cos((24.45+119.34)/180*pi)

J=[-s1*(a2*c2+a3*c23) -c1*(a2*s2+a3*s23) -a3*c1*s23

c1*(a2*c2+a3*c23) -s1*(a2*s2+a3*s23) -a3*s1*s23

0 a2*c2+a3*c23 a3*c23]

Konkrétně tedy

0.8069- 0.1035 0

0 0 0.1035

0.5907- 1.0046- 0

J (3)

-------------------------------------------------

Pro 1. úlohu je vektor kloubových rychlostí v rad/sec

0

0

pi*450/180

q (4)

Odtud vektor rychlostí koncového bodu v m/sec

0

0.8126

0

)( qqJX (5)

a absolutní hodnota vektoru rychlosti v m/sec

0.8126V XX T (6)

Page 23: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 23

-------------------------------------------------

Pro 2. úlohu je vektor kloubových rychlostí v rad/sec

pi*30/180

pi*20/180

pi*450/180

q (7)

Odtud vektor rychlostí koncového bodu v m/sec

0.3864-

0.8126

0.6600-

)( qqJX (8)

a absolutní hodnota vektoru rychlosti v m/sec

1.1159V XX T

Page 24: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

24 FEKT VUT v Brně

8. Příklad – Přímá úloha kinematiky, výpočet zrychlení

Planární manipulátor z následujícího obr. má délky ramen a1=a2=1m. Na konci ramene a2

v bodě P jsou umístěny 2 akcelerometry. Akcelerometr Ax má svou citlivou osu v ose ramene

a2 . Akcelerometr Ay má citlivou osu kolmou na osu ramene a2.

Obr. 8.1 Kinematické schéma manipulátoru

Manipulátor se pohybuje ve vodorovné rovině. Oba jeho klouby se pohybují v čase současně

z počátečních hodnot 0)0()0( 21 do koncové polohy 2/)()( 21 ff tt konstantní

úhlovou rychlostí 1 2 .

Vypočítejte zrychlení ax a ay, které naměří oba akcelerometry Ax a Ay.

Uveďte analytické formule pro výpočet veličin ax a ay a grafy jejich časových průběhů pro

0,5 / secrad .

Řešení:

Nejprve vypočítáme časové průběhy kloubových proměnných. Obě mají stejný časový průběh

1 1( ) ( ) ( )t t t t

Z geometrie manipulátoru je zřejmé že pro polohu bodu P v systému 0 platí

)(2sin)(sin)(

)(2cos)(cos)(

ttty

tttx

p

p

Derivací polohy podle času dostaneme rychlosti bodu P v systému 0

Page 25: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 25

)(2cos2)(cos)(

)(2sin2)(sin)(

ttty

tttx

p

p

Derivací rychlosti podle času dostaneme zrychlení bodu P v systému 0

)(2sin4)(2cos2)(sin)(cos)(

)(2cos4)(2sin2)(cos)(sin)(

22

22

ttttty

tttttx

p

p

S pomocí matice rotace okolo osy Z o úhel 21 převedeme vektor zrychlení ze soustavy

XYo do soustavy spojené s ramenem a2. Dostaneme tak zrychlení které naměří akcelerometry

ao

cos2 sin 2

sin 2 cos2

x p p

y p p

a x x

a y yR

Po dosazení 0t dostaneme pro zrychlení

2 2

2 2

( ) cos 4 cos2

( ) sin 4 sin 2

p

p

x t t t

y t t t

2

2

( ) cos3 4cos4

( ) sin3 4sin4

x

y

a t t t

a t t t

Obr. 8.2 Průběhy zrychlení které naměří akcelerometry

0 0.5 1 1.5 2 2.5 3 3.5-1.5

-1

-0.5

0

0.5

1

1.5

s

m/s

2

axay

0 0.5 1 1.5 2 2.5 3 3.5-1.5

-1

-0.5

0

0.5

1

1.5

s

m/s

2

Page 26: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

26 FEKT VUT v Brně

9. Příklad – Přímá úloha kinematiky, výpočet zrychlení

Mějme planární manipulátor z předchozího příkladu.

Oba jeho klouby se pohybují v čase současně z počátečních hodnot 0)0()0( 21 do

koncové polohy 2/)()( 21 ff tt tak, že koncovou polohu dosáhnou v čase ft =0.5 sec.

Pohyb probíhá tak, že v čase t=0 jsou rychlosti obou kloubových proměnných nulové a oba

klouby mají konstantní zrychlení.

Vypočítejte:

1) Průběh polohy koncového bodu ramene robotu v pracovním prostoru x0, y0

2) Průběh rychlosti koncového bodu ramene robotu v pracovním prostoru x0, y0

3) Průběh zrychlení koncového bodu ramene robotu v pracovním prostoru x0, y0

4) Průběh zrychlení koncového bodu ramene robotu ve směru osy ramene a2

5) Průběh zrychlení koncového bodu ramene robotu ve směru kolmém na osu ramene a2

Výpočet zrychlení v případě 4 a 5 proveďte klasicky a s pomocí matic rotace.

U všech bodů uveďte analytické formule pro výpočet veličin a grafy jejich časových průběhů.

Pozn. Koncový bod ramene robotu P je na konci ramene a2

Řešení:

Nejprve vypočítáme časové průběhy kloubových proměnných. Obě mají stejný časový průběh

2

112

1t (1)

Z koncové polohy a koncového času vypočítáme hodnotu úhlového zrychlení

45,02

1

2

2 (2)

tedy 22)( tt (3)

Vhodné je také vypočítat rychlost a zrychlení kloubových souřadnic

4)(

4)(

t

tt

(4)

1) Z (1) a geometrie manipulátoru je zřejmé

)(2sin)(sin)(

)(2cos)(cos)(

ttty

tttx

p

p (5)

Page 27: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 27

Obr. 9.1 Průběhy veličin )()( tytx pp

Obr. 9.2 Průběh polohy koncového bodu ramene v pracovním prostoru

2) Derivací (5) podle času dostaneme rychlosti

)(2cos2)(cos)(

)(2sin2)(sin)(

ttty

tttx

p

p

(6)

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5-1

-0.5

0

0.5

1

1.5

2

t [sec]

[m]

yp

xp

-1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

x [m]

y [

m]

Page 28: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

28 FEKT VUT v Brně

Obr. 9.3 Průběhy rychlostí koncového bodu v pracovním prostoru

3) Derivací (5) podle času dostaneme zrychlení

)(2sin4)(2cos2)(sin)(cos)(

)(2cos4)(2sin2)(cos)(sin)(

22

22

ttttty

tttttx

p

p

(6)

Obr. 9.4 Průběhy zrychlení koncového bodu v pracovním prostoru

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5-15

-10

-5

0

5

10

t [sec]

[m/s

]

yp d

xp d

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5-150

-100

-50

0

50

100

150

t [sec]

[m/s

2]

xp dd

yp dd

Page 29: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 29

4) Zrychlení koncového bodu ve směru osy ramene (apod) a ve směru kolmém na tuto osu

(akol) dostaneme klasicky tak že vektory zrychlení )()( tytx pp promítneme kolmo do osy

ramene a do osy na ni kolmé. Tedy

)cos()sin(

)sin()cos(

2121

2121

ppkol

pppod

yxa

yxa

(7)

S pomocí matice rotace okolo osy Z o úhel 21 převedeme vektor zrychlení ze soustavy

XYo do soustavy spojené s ramenem a2 a dostaneme stejný výsledek.

p

p

p

p

kol

pod

y

x

y

x

a

a

)cos()sin(

)sin()cos(

1111

1111

aoR (8)

Obr. 9.5 Průběhy zrychlení koncového bodu ve směru ramene a2 a ve směru kolmém na toto rameno

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5-150

-100

-50

0

50

100

t [sec]

[m/s

2]

akol

apod

Page 30: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

30 FEKT VUT v Brně

10. Příklad – Přímá úloha kinematiky, výpočet zrychlení

U vozítka typu Segway, jehož schéma je uvedeno na přiloženém obrázku, je zapotřebí měřit

úhel náklonu α. Pro měření této veličiny byl doporučen jednoosý akcelerometr, umístěný na

rameni vozítka v bodě A, viz obr. Zjistěte jaké zrychlení naměří tento akcelerometr při

obecném pohybu vozítka když bude jeho citlivá osa ležet

a) v souřadnici XA

b) v souřadnici YA

Obr. 10.1 Kinematické schéma vozítka Segway

Pozn. Při obecném pohybu platí, že veličiny x i α mají nenulovou rychlost i zrychlení, t.j. ,,, xx jsou obecně nenulové.

Řešení:

Mezi systémem 0 a A platí homogenní transformace (pootočení kolem osy Z o 90o-α).

1000

0100

cos0sincos

sin0cossin

L

Lx

OAH (1)

Poloha bodu A v systému 0 je tedy určena souřadnicemi

cos

sin

Ly

Lxx

A

A (2)

Rychlost a zrychlení bodu A v systému 0 jsou dány derivacemi

Page 31: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 31

sin

cos

Ldt

dyv

Lxdt

dxv

AAy

AAx

(3)

cossin

sincos

2

2

LLdt

dva

LLxdt

dva

Ay

Ay

AxAx

(4)

Zrychlení bodu A vyjádřené v souřadnicích A získáme s pomocí matice rotace

0

cos

sin

0

cossin

sincos

100

0sincos

0cossin

2

2

2

0,0,

Lx

Lx

LL

LLx

AAAA aRa

(5)

Akcelerometr tedy změří zrychlení (5) ke kterému musíme přidat ještě průmět tíhového

zrychlení do os systému A.

V jednotlivých osách tedy akcelerometr naměří zrychlení

V ose XA

cossin 2 gLx (6)

V ose YA

sincos gLx (7)

Page 32: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

32 FEKT VUT v Brně

11. Příklad – Přímá úloha kinematiky, výpočet zrychlení

Na následujícím obrázku je v časovém okamžiku t=0 nakreslena poloha dvoučlánkového

mechanizmu. Člen 1 se otáčí v rotačním kloubu k1 kolem osy Zo proti směru hodin úhlovou

rychlostí sec/10rad . Člen 2 se otáčí v rotačním kloubu k2 kolem osy X3 proti směru

hodin úhlovou rychlostí sec/10 rad . Mechanizmus je nakreslen v poloze 0 .

Rozměry mechanismu jsou 1 1 23 0,5l m l l m . Na konci členu 2 v bodě P jsou nalepeny

akcelerometry ACC. Vypočítejte jaké zrychlení naměří tyto akcelerometry v osách X2 Y2 a

Z2.

Uveďte postup výpočtu, analytické vzorce pro výpočet zrychlení a nakreslete časové průběhy

zrychlení v průběhu jedné otáčky v kloubu k2.

Obr. 11.1 kinematické schéma dvoučlánkového robota

Řešení:

Vzhledem k tomu, že k řešení bude nakonec použit software MATLAB jsou následující

vzorce zapsány ve formátu pro jeho přímé použití.

V dalším tedy znamená

321 lL3;lL2;lL1;ab;aa;wb;wa;be;al

Page 33: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 33

Homogenní transformace mezi jednotlivými systémy jsou

H01=[cos(al) -sin(al) 0 0; %rotace syst 1 kolem osy Z0 o uhel al

sin(al) cos(al) 0 0;

0 0 1 0

0 0 0 1]

H12=[1 0 0 0; %rotace syst 2 kolem osy X1 o uhel be

0 cos(be) -sin(be) L1;

0 sin(be) cos(be) L2

0 0 0 1]

Homogenní pozice bodu P v systému 2 pak je

P2=[0

L3

0

1]

Homogenní pozice bodu P v systému pak je

P0=H01*H12*P2

=[ -sin(al)*(cos(be)*L3+L1);

cos(al)*(cos(be)*L3+L1);

sin(be)*L3+L2;

1]

Pro kontrolu vypočítáme souřadnice bodu pro al=be=0

P0=[ 0;

L3+L1;

L2;

1]

Pro zjištění zrychlení bodu P musíme nejdříve zjistit jeho rychlost v soustavě 0. Budeme tedy

derivovat jeho souřadnice podle času. (Je třeba si uvědomit, že půjde o derivace složených

funkcí protože jak al tak be jsou funkce času.) Výsledkem derivace x y z složek polohy bodu

P0 podle času tedy bude rychlost VEL v soustavě 0.

VEL0=

[ -cos(al)*wa*(cos(be)*L3+L1)+sin(al)*sin(be)*wb*L3;

-sin(al)*wa*(cos(be)*L3+L1)-cos(al)*sin(be)*wb*L3;

cos(be)*wb*L3]

Pro kontrolu vypočítáme rychlost bodu pro al=be=0

VEL0=

[ -wa*( L3+L1);

0;

wb*L3]

Page 34: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

34 FEKT VUT v Brně

Pro zjištění zrychlení musíme ještě derivovat VEL0 podle času. (Je třeba si uvědomit, že

půjde o derivace složených funkcí protože al; be; wa; wb jsou funkce času. Protože otáčivé

rychlosti jsou konstatní budou jejich časové derivace aa=0; ab=0)

ACC0=

[sin(al)*wa^2*(cos(be)*L3+L1)+2*cos(al)*wa*sin(be)*wb*L3+sin(al)*cos(be)*wb^2*

L3;

-cos(al)*wa^2*(cos(be)*L3+L1)+2*sin(al)*wa*sin(be)*wb*L3 -

cos(al)*cos(be)*wb^2*L3;

-sin(be)*wb^2*L3]

Pro kontrolu vypočítáme zrychlení bodu pro al=0 be=90

ACC0=[2*wa*wb*L3;

-wa^2*L1;

- wb^2*L3]

Zrychlení měřené v soustavě 2 je pak dáno průmětem ACC0 a gravitačního zrychlení do

soustavy 2

ACC0g=

[sin(al)*wa^2*(cos(be)*L3+L1)+2*cos(al)*wa*sin(be)*wb*L3+sin(al)*cos(be)*wb^2*

L3;

-cos(al)*wa^2*(cos(be)*L3+L1)+2*sin(al)*wa*sin(be)*wb*L3-

cos(al)*cos(be)*wb^2*L3;

-sin(be)*wb^2*L3-g]

ACC2=R02'*ACC0g

= [2*wa*sin(be)*wb*L3;

-cos(be)^2*wa^2*L3-cos(be)*wa^2*L1-wb^2*L3-sin(be)*g;

sin(be)*wa^2*cos(be)*L3+sin(be)*wa^2*L1-cos(be)*g]

Pro kontrolu:

Naměřené zrychlení nezáleží na úhlu al.

Pro be=90 dostáváme

ACC2=

= [2*wa*wb*L3;

-wb^2*L3-g;

wa^2*L1]

Časové průběhy naměřeného zrychlení pak pomocí MATLABu vypočítáme podle algoritmu

g=9.81

L1=3

L2=0.5

L3=L2

T=2*pi/10

Page 35: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 35

t=0:0.01:T;

wa=10

wb=10

al=10*t;

be=10*t;

ax= 2*wa*sin(be)*wb*L3;

ay= -cos(be).^2*wa^2*L3-cos(be)*wa^2*L1-wb^2*L3-sin(be)*g;

az= sin(be)*wa^2.*cos(be)*L3+sin(be)*wa^2*L1-cos(be)*g;

subplot(3,1,1)

plot(t,ax);grid

subplot(3,1,2)

plot(t,ay);grid

subplot(3,1,3)

plot(t,az);grid

Obr. 11.2 Průběhy zrychlení , které naměří akcelerometry

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7-100

0

100

ax [

m/s

2]

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7-500

0

500

ay [

m/s

2]

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7-500

0

500

sec

az [

m/s

2]

Page 36: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

36 FEKT VUT v Brně

12. Příklad – Přímá úloha kinematiky, výpočet zrychlení

Na následujícím obrázku je v časovém okamžiku t=0 nakreslena vodorovná platforma, která

se otáčí okolo pevné osy Z0 proti směru hodin otáčivou rychlostí sec/10rad s otáčivým

zrychlením 2sec/2 rad . Na platformě je ve vzdálenosti 3m od její osy3m umístěno kolo o

poloměru 0.5m které se otáčí proti směru hodin stálou otáčivou rychlostí min/30ot .

Souřadnice středu kola Ok v systému 1, který je pevně spojen s platformou jsou [0;3;0,5]m.

Systém k je pevně spojen s kolem a otáčí se s ním. Vypočítejte rychlost a zrychlení bodu P na

obvodu kola v zobrazeném okamžiku.

Uveďte postup výpočtu, analytické vzorce pro výpočet rychlosti a zrychlení, složky rychlosti

a zrychlení v soustavě 0 atd.

Obr. 12.1 Kinematické schéma mechanismu

Řešení:

Pomocí homogenních transformací vyjádříme vztah mezi jednotlivými souřadnými systémy a

posléze obecnou polohu bodu P v pevném souřadném systému 0.

11

)(

1

)(

11

110101

101

0 kkkxzk

k

p

0

dR

0

dRpHH

p (1)

Kde R jsou matice rotace mezi jednotlivými systémy a d jsou vektory posunutí mezi těmito

systémy. Provedeme násobení (1)

11

)()()(

1

011011010 kkzkxz p

0

ddRRRp (2)

Odtud pro polohu p0 dostáváme

011011010 )()()( ddRpRRp kzkkxz (3)

Jednotlivé matice a vektory v (3) jsou zřejmě

Page 37: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 37

0

5.0

0

5.0

3

0

0

0

0

cossin0

sincos0

001

)(

100

0cossin

0sincos

)(

101

101

kk

kxz

pdd

RR

(4)

Po dosazení (4) do (3) dostáváme

5.0sin5.0

cos3coscos5.0

sin3cossin5.0

0p (5)

V daném časovém okamžiku platí 0;0 viz. obrázek. Dosazením těchto hodnot do (4)

a (3) resp. (5) dostáváme konkrétní souřadnice bodu P v systému 0 pro tento časový okamžik.

5.0

5.3

0

0p (6)

Rychlost bodu P v soustavě 0 získáme derivací polohy (3), případně (5) podle času (časově

proměnné argumenty rotačních matic jsou pro jednoduchost vynechány)

kzkkxzkxz 10110110100 )( dRpRRRRpv (7)

Jednotlivé derivace v (7) jsou

sincos0

cossin0

000

000

0sincos

0cossin

11

0101

d

d

d

d

kxkx

zz

RR

RR

(8)

Po dosazení z (8) a (4) do (7) dostáváme

cos5.0

sin3sincos5.0cossin5.0

cos3sinsin5.0coscos5.0

0

v (9)

V daném časovém okamžiku platí sec/60/302;10 rad . Dosazením těchto hodnot

do (7) resp. (9) dostáváme pro daný časový okamžik

Page 38: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

38 FEKT VUT v Brně

sm /

571.1

0

35

0v (10)

Zrychlení bodu P v soustavě 0 získáme derivací rychlosti (7) podle času (časově proměné

argumenty rotačních matic jsou pro jednoduchost vynechány)

kzkkxzkxzkxz

kzkkxzkxzkxzkxz

101101101101

10110110110110100

)2(

)(

dRpRRRRRR

dRpRRRRRRRRva

(11)

Druhé derivace matic v (11) jsou

cossin0

sincos0

000

sincos0

cossin0

000

000

0cossin

0sincos

000

0sincos

0cossin

2

2

1

221

1

2

2

01

2201

01

d

d

d

d

d

d

d

d

kxkxkx

zzz

RRR

RRR

(12)

Po dosazení z (4), (8) a (12) do (11) dostáváme

sin5.0cos5.0

cos3sin3)cossin(cos5.0sinsincos)cossin(5.0

sin3cos3)cossin(sin5.0sincoscos)sincos(5.0

2

222

222

0

a

(13)

V daném časovém okamžiku platí navíc 2sec/0;2´ rad . Dosazením těchto hodnot

do (13),(12) resp. (11) dostáváme pro daný časový okamžik

2

0 /

0

354.93-

7

sma (14)

Zjištěné hodnoty zrychlení odpovídají základní fyzikální představě. Zrychlení ve směru osy

X0 je dáno tangenciálním zrychlením bodu P (jeho abs. hodnota je 5.3 ). Zrychlení bodu P

ve směru osy Y0 je dáno dostředivým zrychlením v důsledku rotace platformy a dostředivým

zrychlením v důsledku rotace kola (abs. hodnota je 22 5.05.3 ).

Page 39: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 39

13. Příklad – Inverzní úloha kinematiky, plánování dráhy

Na následujícím obrázku je nakreslen planární robot se dvěma rotačními klouby.

Obr. 13.1 Kinematické schéma planárního robota

Koncový bod K robotu se má pohybovat po kružnici ve směru šipky tak že v čase t=0 je

v bodě A a má nulovou rychlost. Do bodu 2 se koncový bod pohybuje s konstantním

tangenciálním zrychlením a a od bodu 2 do bodu A stejným způsobem zpomaluje, takže

v čase tf=20 sec se opět dostává do bodu A a má nulovou rychlost.

a) Vypočítejte analytický výraz pro průběh souřadnic x(t) a y(t) bodu K a nakreslete

grafy těchto funkcí.

b) Vypočítejte inverzní úlohu kinematiky pro tento případ, tj. analytický výraz pro

průběh kloubových souřadnic q1(t) a q2(t), který zajistí žádaný pohyb koncového

bodu. Nakreslete grafy těchto funkcí.

c) Nahraďte právě vypočítané průběhy q1(t) a q2(t) přirozenými kubickými splajny, tak,

že splajny budou mít uzlové body odpovídající časům a bodům A,1,2,3,A na kružnici.

přehledně uveďte tabulku koeficientů náhradních polynomů v jednotlivých

intervalech

nakreslete graf kloubových souřadnic q1(t) a q2(t) které nyní probíhají podle

Vámi nalezených splajnů

nakreslete graf x(t) a y(t) za předpokladu, že q1(t) a q2(t) probíhají podle Vámi

nalezených splajnů

nakreslete trajektorii y(x) koncového bodu K za předpokladu, že q1(t) a q2(t)

probíhají podle Vámi nalezených splajnů. (pozn. Trajektorie musí procházet

body A,1,2,3,A)

d) Nahraďte funkce x(t) a y(t) vypočítané v bodě a) přirozenými kubickými splajny ve

stejných uzlových bodech a porovnejte získané trajektorie y(x).

Pozn. Rozměry na obrázku jsou uvedeny v cm.

Na obrázku je uveden kladný směr počítání kloubových souřadnic.

Inverzní úloha má 2 řešení. Volte to řešení, které dává pozitivní hodnoty q2.

Výpočet splajnů je uveden v učebním textu Fajmon B. ,Hlavičková I., Novák M.:

Matematika_3_S.pdf pro kurz BMA3 FEKT VUT v Brně.

Page 40: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

40 FEKT VUT v Brně

Řešení:

a)

Pro odlehlost bodu K od bodu A na kružnici při požadovaném pohybu platí

f

f

f

f

tt

tprottaR

ttproatts

;2

)(2

12

2;0

2

1)(

2

2

(1)

Pro odlehlost bodu 2 od bodu A na kružnici platí

22

22

22

1

f

f

tRa

taR (2)

Pro úhel který svírá spojnice středu kružnice s bodem K s osou x platí

2

)()(

R

tst (3)

Platí tedy

))(

sin(60)sin(40)(

))(

cos(60)cos(60)(

R

tsRRty

R

tsRRtx

(4)

b)

S využitím vět pro výpočet trojúhelníků (m.j. věta sinová a kosinová) platí, viz násl obr.

Obr. 13.2 Trojúhelník k řešení inverzní úlohy

sinarcsinsinsin

2arccos

2cos

22

21

22

2

2

1

21

22

2

2

1

22

l

l

l

l

ll

lll

ll

lll

x

yarctg

yxl

(5)

Page 41: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 41

Odtud

2

1

q

q (6)

c)

Uzlové body splajnů se nachází v časech fttttt ,,,,0 321

Platí (s využitím symetrie úlohy)

13

2

1

2

1

2

2

1

2

ttt

tt

a

Rtat

R

f

f (7)

Hodnoty q1 a q2 v těchto uzlových bodech získáme dosazením časů (7) do rovnic (4) a

následným dosazením hodnot x a y do rovnic (5)-(6)

Tabulka uzlových bodů pro výpočet splajnů

t [s] 0 7.0711 10.0000 12.9289 20.0000

x [cm] 60 80 60 40 60

y [cm] 20 40 60 40 20

q1 [o] -19.3263 5.2656 19.6254 4.9989 -19.3263

q2 [o] 104.4775 54.3147 65.3757 114.6243 104.4775

Koeficienty kubických polynomů 32 dxcxbxa tvořících splajny kloubových souřadnic

vypočteme podle doporučené literatury

Koeficienty kubických polynomů pro q1 [o]

čas. interval d c b a

0-7.0711 0.0298 0.0000 1.9886 -19.3263

7.0711-10 -0.3968 0.6318 6.4563 5.2656

10-12.9289 0.3990 -2.8549 -0.0550 19.6254

12.9289-20 -0.0307 0.6511 -6.5096 4.9989

Koeficienty kubických polynomů pro q2 [o]

čas. interval d c b a

0-7.0711 0.0499 0.0000 -9.5909 104.4775

7.0711-10 0.3234 1.0593 -2.1005 54.3147

10-12.9289 -0.8205 3.9010 12.4278 65.3757

12.9289-20 0.1560 -3.3087 14.1624 114.6243

Požadované grafy jsou uvedeny na následujících obrázcích. Červené průběhy jsou průběhy

odpovídající splajnům.

Page 42: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

42 FEKT VUT v Brně

Obr. 13.3 Časové průběhy kloubových souřadnic

Obr. 13.4 Časové průběhy kartézských souřadnic

0 2 4 6 8 10 12 14 16 18 20-20

-10

0

10

20

cas [sec]

q1

[o

]

0 2 4 6 8 10 12 14 16 18 2040

60

80

100

120

140

cas [sec]

q2

[o

]

0 2 4 6 8 10 12 14 16 18 2030

40

50

60

70

80

90

cas [sec]

x [

cm

]

0 2 4 6 8 10 12 14 16 18 2010

20

30

40

50

60

70

cas [sec]

y [

cm

]

Page 43: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 43

Obr. 13.5 Průběh dráhy v pracovním prostoru

d)

Koeficienty kubických polynomů 32 dtctbta tvořících splajny kartézských souřadnic x

a y vypočteme podle doporučené literatury

Koeficienty kubických polynomů pro x [cm]

čas. interval [s] d c b a

0-7.0711 -0,068 0,000 6,243 60,000

7.0711-10 0,165 -1,449 -4,000 80,000

10-12.9289 0,165 0,000 -8,243 60,000

12.9289-20 -0,068 1,449 -4,000 40,000

Koeficienty kubických polynomů pro y [cm]

čas. interval [s] d c b a

0-7.0711 0,057 0,000 0,000 20,000

7.0711-10 -0,603 1,200 8,485 40,000

10-12.9289 0,603 -4,097 0,000 60,000

12.9289-20 -0,057 1,200 -8,485 40,000

35 40 45 50 55 60 65 70 75 80 8515

20

25

30

35

40

45

50

55

60

65

x [cm]

y [

cm

]

Page 44: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

44 FEKT VUT v Brně

Obr. 13.6 Průběh dráhy v pracovním prostoru

35 40 45 50 55 60 65 70 75 80 8515

20

25

30

35

40

45

50

55

60

65

x [cm]

y [

cm

]

požadovaná trajektorie

uzlové body

splajn v kloubových souřadnicích

splajn v kartézských souřadnicích

Page 45: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 45

14. Příklad – Inverzní úloha kinematiky

Na následujícím obrázku je nakresleno kinematické schéma teodolitu který má sledovat letící

objekt. XYZ0 je souřadný systém pevně spojený se Zemí. XYZT je souřadný systém spojený

s teodolitem, který se může otáčet kolem osy Z0 a kolem osy YT. Objekt letí od severu

konstantní rychlostí 33.3 m/s po přímce a je sledován od bodu A do bodu B. Souřadnice

těchto bodů jsou zadány v systému XYZ0 , A=[2000;100;-1000]T , B=[-2000;100;-1000]

T .

Vypočítejte časové průběhy úhlů a .

(Uveďte analytické výrazy a graf. Respektujte kladný směr os Z)

Obr. 14.1 Kinematické schéma teodolitu

Řešení:

Řešení má demonstrovat chování mechanické soustavy v blízkém okolí singulární polohy. Do

takové polohy se řešená soustava dostává pro 90o.

K řešení využijeme jednoduchou geometrii.

Úhel Ψ je úhel, který svírá průmět L průvodiče letícího objektu do roviny XYo s osou Xo, viz

obr. 1.

atan2( , )y x (1.1)

kde atan2 je funkce deklarovaná v Matlab.

V našem konkrétním případě je

100

2000 33,3 0;120sec

y

x t t (1.2)

Page 46: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

46 FEKT VUT v Brně

Úhel Θ je úhel mezi průvodičem letícího objektu a jeho průmětem L do roviny XYo viz obr.

2.

atanz

L (1.3)

kde

2 2L x y (1.4)

V našem konkrétním případě je z= -1000.

Po dosazení konkrétních hodnot dostaneme požadované grafické průběhy úhlů.

AB

Xo

Yo

2000

-2000

100

-1000

L

[x,y ],z

O

Zo

Obr. 14.2 Ilustrace úlohy

Page 47: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 47

Obr. 14.3 Časové průběhy kloubových souřadnic

0 20 40 60 80 100 1200

20

40

60

80

100

120

140

160

180

sec

de

g

psitheta

Page 48: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

48 FEKT VUT v Brně

15. Příklad – Inverzní úloha kinematiky

Orientace létajícího robota proti Zemi je dána třemi úhly kurzem Ψ sklonem Θ a náklonem Φ

(viz obr.1) a jim odpovídající maticí směrových cosinů resp. maticí rotace R0R.

1. Odvoďte výraz podle kterého vypočítáte matici R0R ze znalosti úhlů Ψ , Θ , Φ.

2. Navigační systém robotu Vám oznámil matici R0R

0.9254 0.0180 0.3785

Ror = 0.1632 0.8826 -0.4410

-0.3420 0.4698 0.8138

vypočítejte jí odpovídající úhly Ψ , Θ , Φ.

Obr. 15.1 Eulerovy úhly RPY

V dalším platí ΦfiiΘthΨpsi

Řešení:

1.

Page 49: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 49

Rz=[cos(psi) -sin(psi) 0

sin(psi) cos(psi) 0

0 0 1]

Ry=[cos(th) 0 sin(th)

0 1 0

-sin(th) 0 cos(th)]

Rx=[1 0 0

0 cos(fii) -sin(fii)

0 sin(fii) cos(fii)]

Ror=Rz*Ry*Rx

= [cos(psi)*cos(th), -sin(psi)*cos(fii)+cos(psi)*sin(th)*sin(fii), sin(psi)*sin(fii)+cos(psi)*sin(th)*cos(fii)]

[ sin(psi)*cos(th), cos(psi)*cos(fii)+sin(psi)*sin(th)*sin(fii), -cos(psi)*sin(fii)+sin(psi)*sin(th)*cos(fii)]

[ -sin(th), cos(th)*sin(fii), cos(th)*cos(fii) ]

2.

inverze s kladným znaménkem cos(Θ)

th=atan2(-Ror(3,1),sqrt(1-Ror(3,1)^2)) = 20o

psi=atan2(Ror(2,1),Ror(1,1)) = 10o

fii=atan2(Ror(3,2),Ror(3,3)) = 30o

inverze se záporným znaménkem cos(Θ)

th=atan2(-Ror(3,1),-sqrt(1-Ror(3,1)^2)) = 160o

psi=atan2(-Ror(2,1),-Ror(1,1)) = -170o

fii=atan2(-Ror(3,2),-Ror(3,3)) = -150o

Page 50: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

50 FEKT VUT v Brně

16. Příklad – Dynamika

Planární manipulátor z následujícího obrázku se pohybuje ve vertikální rovině tak, že jeho

jednotlivé klouby vykonávají zrychlený pohyb z počátečních poloh 0,5mr(0);90)0( o .

Kloub φ se pohybuje se zrychlením ε=180o/s

2 , kloub r se pohybuje se zrychlením

a=0,25m/s2.

Vypočítejte jaké momenty, síly a výkony musí vyvinout motory v kloubech manipulátoru

během jedné otáčky kloubu φ. Uveďte grafy jejich časových průběhů a analytické výrazy pro

jejich výpočet.

Parametry manipulátoru jsou m1=1kg, m2=0,5kg, r1=0,1m. Tíhové zrychlení g=9,81ms-2

.

Dynamický model manipulátoru je

F

M

gm

grmrm

rrm

rm

rm

rmrm

sin

cos)(

0

20

0

0

2

211

2

2

2

2

2

2

11

Obr. 16.1 Planární manipulátor

Pohyb kloubu φ se řídí rovnicí

21

90 0;2

o

ft pro t t

Jednu otáčku vykoná kloub za čas tf

21 720360 2

2 180

o

ft tf

Rychlost kloubu a zrychlení kloubu se řídí rovnicemi

t

Pohyb kloubu r se řídí rovnicemi

21

0.5; ;2

r at r at r a

Vysunutí kloubu v čase tf tedy je

21

( ) 0.5 12

f fr t at m

Page 51: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 51

Hodnoty ( ), ( ), ( ), ( ), ( ), ( )t t t r t r t r t dosadíme do dynamického modelu manipulátoru a

vypočítáme časové průběhy M(t) a F(t).

2 2

1 1 2 2 1 1 2

2

2 2 2

( ) ( ) 2 ( ) cos

( ) sin

M t m r m r m r r m r m r g

F t m r m r m g

Časové průběhy výkonů v jednotlivých kloubech získáme podle rovnic

( ) ; ( )m fW t M W t Fr

Obr. 16.2 Průběhy polohy, rychlosti a zrychlení kloubové proměnné φ

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-100

0

100

200

300fii

[de

g]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

100

200

300

400fiid

[de

g/s

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2179

179.5

180

180.5

181fiidd

[de

g/s

2]

[s]

Page 52: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

52 FEKT VUT v Brně

Obr. 16.3 Průběhy polohy, rychlosti a zrychlení kloubové proměnné r

Obr. 16.4 Průběhy momentů, sil a výkonů v jednotlivých kloubech

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20.4

0.6

0.8

1r

[m]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

0.2

0.4

0.6

0.8rd

[m/s

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-1

0

1

2rdd

[m/s

2]

[s]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-5

0

5

10M

[Nm

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-20

0

20

40Wm

[W]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-30

-20

-10

0F

[N]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-15

-10

-5

0Wf

[W]

[s]

Page 53: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 53

Obr. 16.5 Průběhy sil v kloubu r

Obr. 16.6 Průběhy momentů v kloubu φ

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-20

-15

-10

-5

0

5

[s]

[N]

setrv.sila

dostredivasila

gravitace

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-6

-4

-2

0

2

4

6

[s]

[Nm

]

m coriolis

m gravitace

setrvacnymoment

Page 54: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

54 FEKT VUT v Brně

17. Příklad – Dynamika a plánování dráhy

Planární manipulátor z předchozího příkladu se pohybuje ve vertikální rovině tak, že jeho

koncový bod m2 se pohybuje po přímkové dráze z bodu [0.5;0;0] do bodu [0.5;1;0]. (Zadány

jsou souřadnice [x;y;z]). Tuto dráhu má projet za 2 sec. tak, že do poloviny dráhy bude

maximálně zrychlovat a od poloviny dráhy bude maximálně zpomalovat.

Vypočítejte jaké momenty a síly a výkony musí vyvinout motory v kloubech manipulátoru.

Uveďte grafy jejich časovýh průběhů.

Parametry manipulátoru jsou m1=1kg, m2=0,5kg, r1=0,1m,

Dynamický model manipulátoru je

F

M

gm

grmrm

rrm

rm

rm

rmrm

sin

cos)(

0

20

0

0

2

211

2

2

2

2

2

2

11

Řešení:

Pohyb robota probíhá v časovém intervalu 0 až Tf=2sec.

Při pohybu robota je souřadnice x koncového bodu konstantní, x=0.5m a y se mění v intervalu

od 0 do yf=1m.

Pro souřadnici y při požadovaném pohybu platí

f

f

f

f

f

f

TT

tproatatTT

ay

Ttproaty

;2

(2

2;0

2

1

2

2

2

(1)

Z první rovnice (1) vypočítáme při 2

a2

ff yy

Tt požadované zrychlení pohybu

2

4

f

f

T

ya (2)

Po dosazení numerických hodnot dostáváme tedy a=1m/s2.

K řešení úlohy musíme vypočítat inverzní úlohu kinematiky. Pro daný manipulátor a časové

průběhy veličin x a y platí

f

f

f

TT

tprott

Ttprot

yxr

;2

()5.021(5.0

2;025.05.0

222

42

22

(3)

Page 55: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 55

2

2

( ) 0;2

1 2 0.5( ;

0.5 2

f

f

f

yarctg

x

Tarctg t pro t

Tt tarctg pro t T

(4)

Pro výpočet sil a momentů budeme potřebovat vypočítat rychlosti a zrychlení kloubových

proměnných.

Rychlosti a zrychlení jsou níže vyjádřeny ve formě použitelné pro výpočet úlohy

v MATLABu

dt

dr

1/(1+t^4)^(1/2)*t^3.... pro 2

;0fT

t

(t-2)*(2-4*t+t^2)/(5-16*t+20*t^2-8*t^3+t^4)^(1/2)..... pro f

fT

Tt :

2(

2

2

dt

rd

t^2*(t^4+3)/(1+t^4)^(3/2) ..... pro 2

;0fT

t

(t-1)*(t-3)*(t^4-8*t^3+19*t^2-12*t+6)/(5-16*t+20*t^2-8*t^3+t^4)^(3/2)

pro f

fT

Tt :

2(

dt

d

2*t/(1+t^4) ...... pro 2

;0fT

t

(4-2*t)/(1+(2-4*t+t^2)^2) ..... pro f

fT

Tt :

2(

2

2

dt

d

-2*(-1+3*t^4)/(1+t^4)^2 ...... pro 2

;0fT

t

2*(27-80*t+68*t^2-24*t^3+3*t^4)/(5-16*t+20*t^2-8*t^3+t^4)^2

pro f

fT

Tt :

2(

Page 56: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

56 FEKT VUT v Brně

Podobně jako v předchozím příkladu časové průběhy kloubových proměnných a jejich

derivací dosadíme do rovnic dynamiky a dostaneme tak časové průběhy M a F. Z časových

průběhů M, F a rychlostí odpovídajících kloubových souřadnic dostaneme požadované

výkony jednotlivých pohonů.

Nepříjemný analytický výpočet derivací kloubových proměnných lze obejít numerickou

diferencí. Průběhy získané pomocí numerické diference jsou na následujících obrázcích

uvedeny modře a jsou vypočítány pro krok času sec02.0t .

Obr. 17.1 Časové průběhy souřadnice r a jejich derivací

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20.5

1

1.5

[sec]

[m]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

0.5

1

[sec]

[m/s

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-1

0

1

2

[sec]

[m/s

2]

Page 57: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 57

Obr. 17.2 Časové průběhy souřadnice φ a jejich derivací

Obr. 17.3 Časové průběhy F, M a výkonu (červeně je uveden výkon v souřadnici φ)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

50

100

[sec]

[deg]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

0.5

1

1.5

[sec]

[deg/s

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-4

-2

0

2

[sec]

[deg/s

2]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

2

4

[sec]

[N]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22.5

3

3.5

4

[sec]

[Nm

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

2

4

6

[sec]

[W]

Page 58: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

58 FEKT VUT v Brně

18. Příklad – Dynamika a plánování dráhy

Planární manipulátor z 17. příkladu se pohybuje ve vertikální rovině tak, že jeho koncový

bod m2 opisuje kruhovou dráhu o poloměru 0,4 m se středem v bodě [0,7; 0,7; 0] z bodu

[0,7;0,3;0] do stejného bodu [0,7;0,3;0] proti pohybu hodin. (Zadány jsou souřadnice [x;y;z]

v metrech). Tuto dráhu má projet za 2 sec. tak, že do poloviny dráhy bude maximálně

zrychlovat a od poloviny dráhy bude maximálně zpomalovat.

Vypočítejte jaké momenty, síly a výkony musí vyvinout motory v kloubech manipulátoru.

Uveďte grafy jejich časových průběhů a analytické výrazy pro jejich výpočet.

Parametry manipulátoru jsou m1=1kg, m2=0,5kg, r1=0,1m,

Dynamický model manipulátoru je

F

M

gm

grmrm

rrm

rm

rm

rmrm

sin

cos)(

0

20

0

0

2

211

2

2

2

2

2

2

11

Řešení:

Pro názornost si nakreslíme dráhu po které má obíhat koncový bod a polohu ramene v časech

0, 1, a 2 sec.

Obr. 18.1 Požadovaná dráha mechansmu

Při pohybu robota je dráha, kterou koncový bod urazí na kružnici od počáteční polohy dána

rovnicemi

f

f

f

f

f

TT

tprot

aatTT

aS

Ttproats

;2

(22

2;0

2

1

22

2

(1)

Kde S=2πR je celková délka dráhy o poloměru R a Tf je celkový čas, za který má bod opsat

celý kruh.

Z první rovnice (1) vypočítáme při 2

a2

Ss

Tt

fpožadované zrychlení pohybu

2

4

fT

Sa (2)

Page 59: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 59

Po dosazení numerické hodnoty 2fT dostáváme tedy

Sa (3)

Po dosazení z (3) do (1) a použití 2fT dostaneme

2;1(2

121

1;02

1

2

2

tprottS

tproSts

(4)

Vzdálenost bodu na kružnici od počátečního bodu pohybu může být také vyjádřena rovnicí

sS

SRs

2

2 (5)

Dosazením do (4) dostaneme

2;1(2

212

1;0

2

2

tprot

t

tprot

(6)

Pro souřadnice polohy koncového bodu robota platí

cos7,0

sin7,0

Ry

Rx (7)

Po dosazení za α z (6) tak dostáváme souřadnice polohy koncového bodu

2

2

2

2

0,7 0,4sin ( ) 0;1

0,7 0.4sin 2 1 2 (1;22

0,7 0,4cos( ) 0;1

0,7 0.4cos 2 1 2 (1;22

x t pro t

tt pro t

y t pro t

tt pro t

(8)

K řešení úlohy musíme vypočítat inverzní úlohu kinematiky. Pro daný manipulátor a časové

průběhy veličin x a y platí

Page 60: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

60 FEKT VUT v Brně

2 2

2 22 2

2 22 2

0,7 0,4sin( ) 0,7 0,4cos( ) 0;1

0,7 0.4sin 2 1 2 0,7 0.4cos 2 1 2 (1;22 2

r x y

t t pro t

t tt t pro t

(9)

2

2

2

2

0,7 0,4cos( )0;1

0,7 0,4sin ( )

0,7 0.4cos 2 1 22

(1;2

0,7 0.4sin 2 1 22

yarctg

x

tarctg pro t

t

tt

arctg pro tt

t

(10)

Z těchto časových průběhů bude potřeba vypočítat derivace kloubových veličin, které pak

dosadíme do rovnic dynamiky. Vzhledem ke složitosti výrazů je rozumné provést tento

výpočet numericky prostou diferencí vektorů r a φ vypočítaných např. v MATLABu podle vz.

(9) a (10) s dostatečně malým a konstantním časovým krokem.

Vypočítané časové průběhy kloubových veličin a jejich derivací jsou uvedeny na obr.2.

Vypočítané průběhy kloubových veličin a jejich derivací pak dosadíme do levých stran rovnic

dynamiky a vypočítáme průběhy požadované síly a momentu. Hodnoty výkonů jednotlivých

pohonů jsou pak dány součiny

dt

dMW

dt

drFWr (11)

Vypočítané průběhy síly, momentu a výkonů jsou pak uvedeny na obr. 3.

Page 61: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 61

Obr. 18.2 Průběhy kloubových veličin

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20.5

1

1.5r

[m]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-4

-2

0

2rd

[m/s

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-20

-10

0

10rdd

[m/s

2]

[s]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 220

40

60

80fii

[deg]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-200

-100

0

100fiid

[deg/s

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-1000

-500

0

500fiidd

[deg/s

2]

[s]

Page 62: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

62 FEKT VUT v Brně

Obr. 18.3 Průběhy sil, momentů a výkonů v jednotlivých kloubech

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-5

0

5

10

15M

[Nm

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-10

-5

0

5

10

15Wm

[W]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-5

0

5

10F

[N]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-20

0

20

40

60

80Wf

[W]

[s]

Page 63: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 63

19. Příklad – Plánování dráhy

Na následujícím obrázku je nakreslen planární manipulátor, který obsluhuje dopravník

rovnoběžný s osou y0. Na dopravníku je objekt identifikovaný bodem P. Koncový bod

manipulátoru E se má setkat s bodem P když tento dorazí do bodu Q.

Dopravník se pohybuje konstantní rychlostí v ve směru osy y0.

Koncový bod manipulátoru se musí pohybovat po přímce E0Q rovnoběžné s osou x0.

V čase t=0 je bod P v pozici P0 a koncový bod manipulátoru je v bodě E0.

Pohyb koncového bodu manipulátoru po přímce E0Q musí být takový, že časový průběh

souřadnice x koncového bodu se řídí zákonem x(t)=at3+ bt

2+ ct +d tak, že rychlost pohybu je

nulová jak v čase t=0 a tak v čase setkání obou bodů.

Obr. 19.1 Schéma manipulátoru a pracovního prostoru

Vypočítejte časový průběh souřadnice x kloubových souřadnic s1 a , který zajistí splnění

zadání.

Uveďte analytické formule pro jejich výpočet a grafy jejich průběhů v čase pro h=0,5m,

k=1m a v=0,1m/s.

Řešení:

Nejprve vyřešíme úlohu plánování dráhy.

Bod P dorazí do bodu Q v čase

v

ht f

Trajektorie x(t) koncového bodu E robota musí splňovat následující podmínky

Page 64: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

64 FEKT VUT v Brně

0|)(

|)(

0|)(

0|)(

0

0

tft

tft

t

t

tx

ktx

tx

tx

odtud

0|23

|

00|23

00|

0

2

23

0

2

0

23

t

tft

t

t

btt

kbtat

ccbtt

ddctbtat

Z posledních dvou rovnic vyřešíme koeficienty a a b.

23

32h

vkb

h

vka

Pro x(t) tedy platí

2

2

3

3

32)( th

vkt

h

vktx

Z geometrie konfigurace a robota vyřešíme inverzní úlohu kinematiky

2 2

1

( ) ( )

atan( )

s t x t h

h

x t

Po dosazení numerických hodnot h=0,5m, k=1m a v=0,1m/s získáme konkrétní průběhy

požadovaných hodnot pro časový interval 0 až tf=5s.

Page 65: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 65

Obr. 19.2 Průběhy veličiny x a kloubových proměnných

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50

0.5

1

x[m

]

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50

0.5

1

1.5

s[m

]

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 520

40

60

80

100

sec

th[d

eg

]

Page 66: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

66 FEKT VUT v Brně

20. Příklad – Plánování dráhy

Planární robot se pohybuje v rovině XY jako hmotný bod po parabole zadané rovnicí y x

konstantní tečnou rychlostí v = 0.1 m/s. Pohyb je zahájen v poloze x(0) = 0 a končí v poloze

x(tf) = 10m.

Vypočítejte

1. Časové průběhy jeho souřadnic x(t) y(t) v intervalu <0;tf>

2. Časové průběhy jeho rychlostí ( ) ( )x yv t v t v intervalu <0;tf>

3. Časové průběhy jeho zrychlení ( ) ( )x ya t a t v intervalu <0;tf>

Nagreslete grafy těchto závislostí

Řešení:

Řešení je poněkud komplikovanější, proto využijeme symbolický toolbox Matlabu a některé

otázky vyřešíme numericky. K řešení lze přistoupit dvěma způsoby

a) Za parametr křivky zvolíme proměnnou x.

Pak pro vyjádření délky křivky platí

0

1( ) (1 ) ( ) (0)

4

x

s x d F x F

Výpočet primitivní funkce F v symbolickém toolboxu dá poměrně komplikovaný výraz

>> syms x real

>>F= int(sqrt(1+1/4/x))

(x*(1/(4*x) + 1)^(1/2)*(log(x + (x^2 + x/4)^(1/2) + 1/8)/(x^2 + x/4)^(1/2) + 8))/8

2

2

1ln

4 81 1( ) 1 8

8 4

4

xx x

F x xx x

x

Tato funkce není spojitá v x=0. Její limity zprava a zleva jsou

>> limit(F,x,0,'right')

-log(8)/8=-0.2599

>> limit(F,x,0,'left')

(3*log(2))/8=0.2599

Délka křivky je tedy

sx=(x*(1/(4*x) + 1)^(1/2)*(log(x + (x^2 + x/4)^(1/2) + 1/8)/(x^2 + x/4)^(1/2) + 8))/8+ log(8)/8

Page 67: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

Robotika – sbírka příkladů 67

b) Za parametr křivky zvolíme proměnnou y.

Pak pro vyjádření délky křivky platí

2

0( ) (1 4 ) ( ) (0)

x

s y y d F y F

Výpočet primitivní funkce F v symbolickém toolboxu dá výraz

F=asinh(2*y)/4 + y*(y^2 + 1/4)^(1/2)

2asinh(2 ) 1( )

4 4

yF y y y

který je jednodušší a platí pro něj F(0)=0. Délka křivky pak je

sy=asinh(2*y)/4 + y*(y^2 + 1/4)^(1/2)

V obou případech pak můžeme sestavit tabulku, ze které dokážeme numericky zjistit potřebné

závislosti.

i x y s dt t vx vy ax ay

1

2

3

….. ….. ….. ….. ….. ….. ….. ….. ….. …..

kde

( ) ( 1) ( ) / 1,2,....

( 1) ( ) ( ) (1) 0 1,2,.....

( ) ( 1) ( ) / ( ) 1,2,....

( ) ( 1) ( ) / ( ) 1,2,....

( ) ( 1) ( ) / ( ) 1,2,....

( ) ( 1) ( ) / ( ) 1,2,....

dt i s i s i v i

t i t i dt i t i

vx i x i x i dt i i

ax i vx i vx i dt i i

vy i y i y i dt i i

ay i vy i vy i dt i i

Dělení, resp. krok tabulky musí být dostatečně jemný. Klíčový je výpočet dt(i).

Časové průběhy jednotlivých veličin pro krok veličiny x 0.01m jsou uvedeny na následujícím

obrázku. Čas za kterou je dráha vykonána je 106.6 sec.

Page 68: Robotika sbírka řešených příkladůrobotika/Sbirka_prikladu_z... · 2016-05-13 · Obr. 4.1 Kinematické schéma robota Koncový bod H robotu se má pohybovat po kružnici konstantní

68 FEKT VUT v Brně

Obr. 20.1 Průběhy polohy, rychlostí a zrychlení robota

0 20 40 60 80 100 1200

2

4

6

8

10

12m

0 20 40 60 80 100 1200

0.02

0.04

0.06

0.08

0.1

m/s

0 20 40 60 80 100 120-0.01

-0.005

0

0.005

0.01

0.015

0.02

sec

s

x

y

vx

vy

ax

ay