You are on page 1of 68

Kinematika robota

_____________________________________________________________________________________________________________

1. KINEMATIKA ROBOTA

7
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

SADRŽAJ

1. KINEMATIKA ROBOTA ..............................................................................................7

1.1 GEOMETRIJSKI MODEL MANIPULACIONIH ROBOTA.............................10


1.1.1 Zglobovi robota...................................................................................................10
1.1.2 Segmenti robota ..................................................................................................12
1.1.3 Kinematički par...................................................................................................13
1.1.4 Kinematički lanac ...............................................................................................13
1.1.5. Minimalna konfiguracija manipulacionih robota..............................................17
1.1.6. Radni prostor minimalne konfiguracija.............................................................19
a. Radni prostor TTT strukture ................................................................................19
b. Radni prostor RTT strukture ................................................................................20
Radni prostor RRT strukture....................................................................................20
d. Radni prostor RRR strukture................................................................................21

1.2. ODREDJIVANJE POLOŽAJA MANIPULACIONIH ROBOTA ...........................22


1.2.1. Uvod ...................................................................................................................22
Pozicioniranje hvataljke...........................................................................................23
Orijentacija hvataljke ...............................................................................................23
1.2.2. Unutrašnje koordinate .......................................................................................25
1.2.3. Spoljašnje koordinate.........................................................................................26
1.2.4. Direktan kinematički problem............................................................................28
1.2.5 Inverzan kinematički problem............................................................................29
1.2.6. Redundantnost....................................................................................................30

8
Kinematika robota
_____________________________________________________________________________________________________________

1.3. DIREKTAN KINEMATIČKI PROBLEM ...............................................................31


1.3.1. Uvod...................................................................................................................31
1.3.2. Homogene matrice transformacije ....................................................................32
1.3.3. Denavit-Hartenbergova transformaciona matrica............................................35
1.3.4. Odredjivanje orientacije hvataljke ....................................................................44

1.4. INVERZAN KINEMATIČKI PROBLEM ...............................................................51


1.4.1. Uvod...................................................................................................................51
1.4.2. Analitičko rešenje inverznog kinematičkog problema .......................................53
1.4.3. Numerička rešenja inverznog kinematičkog problema......................................56
1.4.4. Odredjivanje Jacobijeve matrice .......................................................................58

1.5. SINTEZA TRAJEKTORIJA MANIPULACIONIH ROBOTA ...............................60


1.5.1. Uvod...................................................................................................................60
1.5.2. Sinteza kretanja u prostoru spoljašnjih koordinata...........................................61
1.5.3. Sinteza kretanja u prostoru unutrašnjih koordinata..........................................62

1.6. REKURZIVNA KINEMATIKA MANIPULACIONIH ROBOTA .........................64


1.6.1. Odredjivanje brzine i ubrzanja pri složenom kretanju tačke.............................64
2.2.2 Rekurzivni kinematički model robota .................................................................67

LITERATURA .....................................................................................................................72

9
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

1.1 GEOMETRIJSKI MODEL MANIPULACIONIH ROBOTA

Robot se sastoji od n krutih tela koji predstavljaju segmente medjusobno povezane


zglobovima.

1.1.1 Zglobovi robota


Opšti slučaj kretanja krutog tela obuhvata translatorno kretanje po Dekartovim
koordinatama (x,z,y) i rotaciju oko ovih koordinata. Kod manipulacionih robota kretanja
takodje delimo na translaciju i na rotaciju. Tako sledi da zglobovi manipulacionih robota
imaju jedan stepen slobode kretanja i mogu biti:
a) rotacioni
b) translatorni

Rotacioni zglobovi obezbedjuju rotaciono kretanje jednog segmenta u odnosu na


drugi, šematski se prikazuju valjcima (slika 1.1) i predstavljaju se simbolom R.

z l2

l1

Slika 1.1. Rotacioni zglob sa q šematskim prikazom

10
Kinematika robota
_____________________________________________________________________________________________________________
Translatorni zglobovi obezbedjuju translatoran pomeraj jednog segmenta u odnosu
na prethodni, šematski se prikazuju kvadrima (slika 1.2) i predstavljaju se simobom T.

l2 z

l1
q

Slika 1.2. Translatoran zglob sa šematskim


prikazom

Na sl. 1.3. prikazan je manipulacioni robot tipa Puma sa 6 stepeni slobode kretanja
(svi zglobovi su rotacioni), a na slici 1.4. dat je šematski prikaz ovog robota.

q2
q3

q5
q1

q6
q4
Slika. 1.3. Manipulacioni robot PUMA

11
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Slika. 1.4. Šematski prikaz manipulacionog robota


PUMA

1.1.2 Segmenti robota


Segment manipulacionog robota je kruto telo sa svojim kinematičkim i dinamičkim
parametrima (slika 1.5.). Kinematički parametri se definišu prema Denavit-
Hartenbergovom pristupu:

♦ dužina segmenata i

♦ uglovi izmedju osa zglobova,


a dinamički parametri su:

♦ mase i

♦ momenti inercije segmenta.

q i-1 qi

Segment i

Zglob i
Zglob (i-1)

Slika 1.5. Segment manipulacionog robota

12
Kinematika robota
_____________________________________________________________________________________________________________
1.1.3 Kinematički par
Kinematički par je skup od dva susedna segmenta mehanizma povezana zglobnom
vezom. Posmatraćemo kinematički parove samo sa jednim stepenom slobode kretanja
(rotacija ili translacija).

1.1.4 Kinematički lanac


Kinematički lanac je skup od n povezanih kinematičkih parova. Prema strukturi veza
ostvarenih u kinematičkom lancu dele se na:

prost složen

Kinematički
lanac
- podela -

otvoren zatvoren
Slika. 1.6.
Podela
kinematičkih lanaca

Kod prostog kinematičkog lanca nijedan segment ne ulazi u više od dva kinematička para.

Kod složenog kinematičkog lanca postoji bar jedan segment koji ulazi u više od dva
kinematička para.

Otvoreni kinematički lanac poseduje bar jedan segment koji pripada samo jednom
kinematičkom paru.

Kod zatvorenog kinematičkog lanca svaki segment ulazi u dva kinematička para.

13
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Primeri tipova kinematičkih lanaca prikazuju se na slici 1.7.:

prost, otvoren kinematički lanac

prost, zatvoren kinematički lanac

složen, otvoren kinematički lanac

složen, zatvoren kinematički lanac

Slika. 1.7. Tipovi kinematičkih lanaca

14
Kinematika robota
_____________________________________________________________________________________________________________
Sa stanovišta teorije mehanizama, aktivni mehanizmi u robotici su složeni
kinematički lanci u opštem slučaju promenljive kinematičke strukture [1]. Promenu
strukture kinematičkog lanca industrijskog robota možemo da prikažemo u toku realizacije
zadatka uvlačenja radnog predmeta u otvor tj. pri montaži. Posmatraćemo robot sa 6
stepeni slobode, pre hvatanja radnog predmeta kinematički lanac robota je prost i otvoren
(slika 1.8.).

U fazi prenošenja radnog predmeta kinematička šema se ne menja, ali poslednji član
lanca - hvataljka i radni predmet zajedno - menja svoje dimenzije i masu, što utiče na
promenu dinamike sistema (slika 1.9.).

Konačno, u fazi uvlačenja predmeta menja se i kinematička šema mehanizma i


postaje prost i zatvoren kinematički lanaca [1], (slika 1.10.):

Slika 1.8. Manipulacioni robot pre hvatanja radnog predmeta

15
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Slika 1.9. Faza prenošenja radnog predmeta

Slika1.10. Faza uvlačenja radog predmeta u otvor

16
Kinematika robota
_____________________________________________________________________________________________________________
1.1.5. Minimalna konfiguracija manipulacionih robota
Minimalna konfiguracija manipulacionog robota podrazumeva kinematički lanac sa
tri zgloba i tri stepena slobode kretanja. Na minimalnu konfiguraciju nadovezuje se
hvataljka robota. Najčešće manipulacioni robot poseduje mehanizam sa minimalnom
konfiguracijom pomoću koje se vrši tkzv. pozicioniranje tj. dovodjenje korena hvataljke
robota u željenu poziciju u radnom prostoru. Pošto zglobovi mogu biti rotacioni R i
translatorni T, tada u slučaju minimalne konfiguracije sa tri zgloba, mogu se sastaviti
sledeće različite kombinacije zglobova (Slika 1.11.):

Slika 1.11. Prikaz mogućih šema minimalne konfiguracije manipulacionih robota

Minimalna konfiguracija robota


Struktura šemat Struktura šema
N

1 RRR 5 TRR

2 RRT 6 TTR

3 RTT 7 TRT

4 RTR 8 TTT

17
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Potrebno je naglasiti i to, da u okviru date šeme mogućih minimalnih konfiguracija


prema slici 1.11., postoji i veliki broj različitih kombinacija robota u zavisnosti od
kinematičkih parametara. Za radne zadatke montaže često se koristi robot tkzv. SCARA
(Selective Compliant Articulated Robot for Assembly) konfiguracije (Slika 1.12):

z1
q2
z0
q1 q3

z2

Sl. 1.12. Minimalna konfiguracija Scara robota

18
Kinematika robota
_____________________________________________________________________________________________________________

1.1.6. Radni prostor minimalne konfiguracija


Pod radnim prostorom minimalne konfiguracije manipulacionog robota
podrazumevamo onaj deo prostora u čiju svaku tačku može da dodje vrh minimalne
konfiguracije tj. koren hvataljke. U daljem tekstu razmotrićemo radne prostore nekih
minimalnih konfiguracija [7].

a. Radni prostor TTT strukture

TTT struktura ima tri translatorna zgloba (pravougaona šema). Na slici br. 1.12.
prikazan je primer ovakve minimalne konfiguracije robota sa radnim prostorom. Radni
prostor TTT strukture je kocka ili kvadar.

y
a

o x

Slika 1.13. TTT struktura sa radnim prostorom

19
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

b. Radni prostor RTT strukture

Minimalna konfiguracija RTT strukture (cilindrična šema) ima tri zgloba od kojih je
prvi rotacioni a druga dva translatorna. Na slici br. 1.14. prikazan je primer ovakve
minimalne konfiguracije robota sa radnim prostorom. Radni prostor RTT strukture je
šupalj cilindar.
z

y
b

x
o

Slika 1.14. RTT struktura sa radnim prostorom

Radni prostor RRT strukture

Kod RRT strukture prva dva zgloba su rotaciona a treći translatorni (sferna šema).
Na slici br. 1.15. prikazan je primer ovakve minimalne konfiguracije robota sa radnim
prostorom. Sada je radni prostor manipulacionog robota šuplja lopta.
z

c
y

o
x

Slika 1.15. RRT struktura sa radnim prostorom


20
Kinematika robota
_____________________________________________________________________________________________________________

d. Radni prostor RRR strukture

RRR struktura manipulacionog robota poseduje tri rotaciona zgloba. Na slici br.
1.16. prikazan je primer ovakve minimalne konfiguracije robota sa radnim prostorom.
Radni prostor je lopta.

d
y

o x

Slika 1.16. RRR struktura sa radnim prostorom

Pod pretpostavkom da su parametri gore navedenih minimalnih konfiguracija (1.13.-


1.16.) identični, tj.:
- ako je maksimalno translatorno pomeranje 1,
- maksimalno zakretanje 6 180o i
- dužina rotirajućih segmenata 1,
tada se može konstatovati da je najveći radni prostor kod RRR strukture. Pri tome treba
imati u vidu i činjenicu da je greška pozicioniranja veća kod manipulacionih robota sa
rotacionim zglobovima (zbog superponiranja greški pozicioniranja kod rotacionih
zglobova [1].

U praksi se najčešće primenjuju roboti sa rotacionim zglobovima, sa jedne strane


zbog obrtnog kretanja pogonskog motora, a sa druge strane zbog upravljanja. Kod
translatornog zgloba potrebno je pretvoriti obrtno kretanje pogonskog motora u
translatorno kretanje, što unosi zazore i gubitke u mehanički sistem robota.

21
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

1.2. ODREDJIVANJE POLOŽAJA MANIPULACIONIH ROBOTA

1.2.1. Uvod
Najelementarniji zadatak koji se javlja kod upravljanja robotima je dovodjenje
hvataljke robota željeni položaj u radnom prostoru. Jedan od najjednostavnijih zadataka
kod manipulacionih robota je premeštanje radnog predmeta iz jedne pozicije u drugu. Na
slici br. 1.17 prikazan je zadatak premeštanja radnog predmeta iz položaja 1 u položaj 2.
Pri tome je potrebno dovesti hvataljku robota do pozicije u blizini predmeta i orijentisati
hvataljku da može da uhvati radni predmet. Položaj manipulacionog robota je dakle,
definisan željenom pozicijom hvataljke u radnom prostoru i njenom orijentacijom [3].

Slika 1.17. Zadatak premeštanja radnog predmeta iz položaja 1 u položaj 2

22
Kinematika robota
_____________________________________________________________________________________________________________

Sledeća faza je hvatanje i premeštanje radnog predmeta u novu poziciju (koja


definiše novu poziciju i orijentaciju hvataljke) koja zahteva novi položaj manipulatora
(položaj 2). Kada se predmet dovede u položaj 2, hvataljka se otvara i radni predmet se
postavlja na željeno mesto. Zadatak pozicioniranja je najelementarniji zadatak
manipulacionih robota. Javlja se npr. kod montaže pomoću robota u fazi dovodjenja
radnog predmeta do mesta spajanja (naravno, sama faza spajanja je znatno
komplikovanija), takodje kod tačkastog zavarivanja se javlja zahtev za precizno
pozicioniranje (i orijentisanje) robota u položaje u kojima se vrši zavarivanje.

Pozicioniranje hvataljke

Pozicioniranje manipulacionog robota podrazumeva dovodjenje korena hvataljke u


željenu tačku radnog prostora. Za realizaciju zadatka pozicioniranja potrebno je 3 stepena
slobode kretanja (x, y, y).

Orijentacija hvataljke

Potpuna orijentacija hvatalke podrazumeva postavljanje hvataljke u tačno odredjeni


uglovni položaj (ψ, θ, ϕ) u prostoru. Za realizaciju zadatka pozicioniranja zajedno sa
orijentacijom potrebno je 3+3 = 6 stepeni slobode kretaja.

Industrijski manipulacioni roboti proizvode se uglavnom sa 4, 5 ili 6 stepeni


slobode kretanja. Manipulacioni robot sa 4 stepena slobode kretanja može da izvrši
pozicioniranje, za šta je potrebno 3 stepena slobode (x,y,z), a sa preostalim četvrtim
stepenom slobode vrši dopunska kretanja tj. orijentaciju po jednom uglu (ψ), što je
dovoljno za izvršenje nekih jednostavnijih manipulacionih zadataka (prenošenje predmeta,
opsluživanje presa itd.). Delimična orijentacija podrazumeva samo da se odredjena osa
hvataljke poklopi sa željenim pravcem u prostoru. Razlika pri realizaciji orijentacije po 1
ili po 2 ugla prikazana je kod zadatka montaže na slici 1.18. i 1.19., [4]. Manipulacioni
robot sa 5 stepeni slobode kretanja može da izvrši zadatak pozicioniranja (x,y,z) zajedno sa
delimičnom orijentacijom po dva ugla (ψ,θ) (prenošenje tečnosti, jednostavniji zadaci
montaže, zavarivanje itd.). Manipulacioni robot sa 6 stepeni slobode kretanja može u

23
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

principu da izvrši bilo kakav maniulacioni zadatak, jer može da realizuje potpuno
pozicioniranje (x,y,z) sa potpunom orijentacijom (ψ,θ,ϕ) (složeniji zadaci montaže,
prenošenja itd.).
z

z'

Slika 1.18. Orijentacija prema 1 uglu

Ψ
z'

Slika 1.19. Orijentacija prema 2 ugla

24
Kinematika robota
_____________________________________________________________________________________________________________

Zadatke pozicioniranja i orijentacije manipulacionih robota u principu možemo


realizovati preko:

a.) unutrašnjih koordinata, i


b.) spoljašnjih koordinata.

1.2.2. Unutrašnje koordinate


Pod unutrašnjim koordinatama manipulacionog robota podrazumevaju se skalarne
veličine koje opisuju relativni položaj jednog segmenta u odnosu na drugi segment
kinematičkog para [1]. Kod rotacionog zgloba unutrašnja koordinata je ugao zakretanja u
zglobu, a kod translatornog zgloba unutrašnja koordinata je linearan pomeraj duž ose
zgloba. Unutrašnje koordinate manipulacionih robota označavamo sa:
qi i = 1,2,...,n
i one čine vektor unutrašnjih koordinata:

 q1 
q 
(1.1) q =  2
M
 
q n 

q3
q4
q5
q2
q6

q1

Slika 1.20. Unutrašnje koordinate manipulacionog robota

25
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Svaka unutrašnja koordinata može da se menja u odredjenom opsegu:


q i min ≤ q i ≤ q i max

Može da se konstatuje, da pri pozicioniranju kod rotacionih zglobova istovremeno se


menja i orijentacija hvataljke, pa je potrebno samo korigovati orijentaciju, dok kod
translatornih zglobova ovo nije slučaj.

1.2.3. Spoljašnje koordinate


Spoljašnje koordinate s opisuju položaj i orijentaciju hvataljke manipulacionog
robota (posledji segment u kinematičkom lancu) u odnosu na neki nepokretan koordinatni
sistem [1].

Pozicija hvataljke se opisuje sa tri Dekartove koordinate x, y i z, a referentni sistem


je vezan za bazu robota (ponekad se koriste i cilindrične i sferične koordinate).

Orijentacija hvataljke opisuje se sa modifikovanim Euler-ovim uglovima zakretanja


izmedju osa koordinatnog sistema vezanog za poslednji segment (hvataljku) i nepokretnog
koordinatnog sistema vezanog za bazu robota (ψ, θ, ϕ). Razmatraćemo uglove skretanja ψ,
propinjanja θ i valjanja ϕ prema slici 1.21:

ψ - ugao skretanja (ROLL)


θ - ugao propinjanja (PITCH)
ϕ - ugao valjanja (YAW)
zn
ψ

θ
On
ϕ
yn
xn

Slika 1.21. Modifikovani Euler-ovi ROLL, PITCH, YAW uglovi

26
Kinematika robota
_____________________________________________________________________________________________________________

z
zn
ψ

θ
ϕ on
qi yn
xn
z
o
x
y
y
x
Slika 1.22. Spoljašnje koordinate hvataljke manipulacionog robota

Ugao skretanja ψ odgovara rotaciji oko ose z nepokretnog sistema, ugao propinjanja
θ odgovara rotaciji oko novodobijene ose y (posle zakretanja za ugao ψ), a ugao valjanja ϕ
odgovara rotaciji oko novodobijene ose x (sve po pravilu desne ruke) [1].

Vektor spoljašnjih koordinata s čine:

♦ x, y i z koordinate neke tačke na hvataljci u odnosu na nepokretni koordinatni sistem i

♦ ψ, θ, ϕ uglovi, koje ose koordinatnog sistema vezanog za hvataljku zaklapaju sa osama


nepokretnog (apsolutnog) koordinatog sistema:

x
y
 
z
(1.2) s= 
Ψ 
θ
 
 ϕ 

27
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Vektor spoljašnjih koordinata s u opštem slučaju ima m koordinata, gde je m broj


koordinata potreban da se opiše neka klasa manipulacionih zadataka. Najčešće je m = 6.
Medjutim za odredjene klase manipulacionih zadataka dovoljan je manji broj spoljašnjih
koordinata, tako naprimer za pozicioniranje hvataljke (bez orijentacije) m = 3, a vektor
spoljašnjih koordinata glasi [3]:
x 
(1.3) s =  y 
 z 

1.2.4. Direktan kinematički problem


Odredjivanje vektora spoljašnjih koordinata s za zadati vektor unutrašnjih koordinata
q je direktan kinematički problem [1]. Direktan kinematički problem se može opisati
sledećom relacijom:

(1.4) s = f(q)

gde su:
q - vektor unutrašnjih koordinata robota
s - vektor spoljašnjih koordinata robota
f: Rn→Rm - nelinearna, neprekidna diferencijabilna vektorska funkcija koja
preslikava unutrašnje koordinate u spoljašnje.

Na sledećoj šemi prikazana je struktura direktnog kinematičkog problema. Svakoj


vrednosti vektora unutrašnjih koordinata q, odgovara vrednost vektora spoljašnjih
koordinata s. U odeljku 1.2.3. detaljnije se razmatra direktan kinematički problem.

q TRANSFORMACIJA s
UNUTRAŠNJIH KOORDINATA U SPOLJAŠNJE

Slika 1.23. Struktura direktnog kinematikog problema

28
Kinematika robota
_____________________________________________________________________________________________________________

1.2.5 Inverzan kinematički problem


Odredjivanje vektora unutrašnjih koordinata za zadati vektor spoljašnjih koordinata
je inverzan kinematički problem [1] i može da se opiše sledećom relacijom:

(1.5) q = f -1(s)

Na sledećoj šemi prikazana je struktura inverznog kinematičkog problema:

s TRANSFORMACIJA q
SPOLJAŠNJIH KOORDINATA U UNUTRAŠNJE

Slika 1.24. Struktura inverznog kinematičkog problema

Pregledna šema direktnog i inverznog kinematičkog problema je data na slici 1.25.:

Inverzan kinematički problem

s q3
q
z
zn q4
ψ
-1
ϕ
θ f q2
q6
q5

yn
xn Tool-Center-Point
(TCP)

q1

y
f
x

vektor spoljašnjih koordinata vektor unutrašnjih koordinata


T
s=|x, y, z, ψ, θ, ϕ |T q=|q1, q2, q3, q4, q5, q6|
Direktan kinematički problem

Slika 1.25. Pregledna šema direktnog i inverznog kinematičkog problema


29
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Inverzan kinematički problem je znatno složeniji od direktnog problema, jer


obuhvata rešavanje skupa nelinearnih trigonometrijskih jednačina (pošto je veza izmedju
spoljašnjih i unutrašnjih koordinata nelinearna). Rešava se pri sintezi kretanja
manipulacionog robota, kada je trajektorija hvataljke zadata u prostoru spoljašnjih
koordinata i potrebno je odrediti odgovarajuću promenu unutrašnjih koordinata. U odeljku
1.4. detaljnije se razmatra inverzan kinematički problem.

1.2.6. Redundantnost
Manipulacioni robot se smatra neredundantnim u odnosu na odredjenu klasu
radnih zadataka opisanih u prostoru spoljašnjih koordinata, ako je dimenzija vektora
spoljašnjih koordinata m jednaka broju stepeni slobode manipulatora n [1], tj:
m = n.
Ako je:
n>m
manipulacioni robot je redundantan u odnosu na radni zadatak i postoji beskonačno mnogo
vektora unutrašnjih koordinata koji odgovaraju jednom stanju hvataljke.

Ako je pak:
n<m
tada robot ne može da izvrši postavljeni zadatak. U daljem tekstu razmatraćemo
problematiku neredundantnih manipulatora.

30
Kinematika robota
_____________________________________________________________________________________________________________

1.3. DIREKTAN KINEMATIČKI PROBLEM

1.3.1. Uvod
Kao što je već ranije konstatovano, odredjivanje vektora spojašnjih koordinata s za
dati vektor unutrašnjih koordinata q je direktan kinematički problem. U nekim prostijim
manipulacionim zadacima direktno se zadaju pomeranja u zglobovima. Posmatrajmo
manipulacioni robot na slici 1.26.:

Slika 1.26. Zadavanje zadatka preko unutrašnjih koordinata manipulacionog robota

31
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

U prvoj fazi, hvataljka robota prenosi radni predmet iz položaja A u položaj B


putanjom AB i pri tome se menja unutrašnja koordinata q1 za π/2. U drugoj fazi, pri
zaokretanju radnog predmeta u horizontalan položaj, menja se unutrašnja koordinata q4
takodje za π/2. U trećoj fazi rada manipulacionog robota, prenosi se predmet u položaj C i
menja se unutrašnja koordinata q1 za -π/2 a istovremeno se menja i unutrašnja koordinata
q2 spuštajući radi predmet za dužinu l. Poznavajući tako promenu unutrašnjih koordinata
q1, rešavanjem direktnog kinematičkog problema možemo da odredimo kretanje hvataljke
robota tj. spoljašnje koordinate s [4]. Razmotrimo sada kako se uspostavlja veza izmedju
unutrašnjih i spoljašnjih koordinata manipulacionih robota, u tom cilju neophodno je
opisati tzv. homogene matrice transformacije.

1.3.2. Homogene matrice transformacije


Homogene matrice transformacije predstavljaju matrice reda 4x4 koje objedinjuju
informaciju o:

♦ rotaciji dva koordinatna sistema i o

♦ rastojanju izmedju njihovih koordinatnih početaka.

Uvode se radi kompaktnijeg pisanja jednačina za izračunavanje vektora izraženih u odnosu


na različite koordinatne sisteme [1]. Upoznajmo prvo matricu rotacije izmedju dva
koordinatna sistema (klasična matrica transformacije). Posmatrajmo dva koordinatna
sistema:

♦ nepokretni Ox0y0z0 vezan za bazu robota i

♦ pokretni u tački Onxzy vezan za hvataljku robota i odredjen jediničnim vektorima e1,
e2 i e3 (slika 1.25.).

Za referentni koordinatni sistem usvojimo Ox0y0z0. Položaj tačke O1 u referentnom


koordinatnom sistemu možemo da opišemo sa vektorom položaja k, a orijentacija
pokretnog koordinatnog sistema u odnosu na referentni može da se opiše matricom rotacije
R prema sledećem:

32
Kinematika robota
_____________________________________________________________________________________________________________

e1x e2 x e3 x 
(1.6) R = e1y e2 y e3 y  matrica rotacije
 e1z e2z e3z 

zo z

e3 y
e2
On
e1
k x

O
yo
x0

Slika 1.27. Prikaz koordinatnih sistema

Prema tome elementi matrice rotacije R (klasična matrica transformacije) su


projekcije jediničnih vektora e1, e2 i e3 na koordinatne ose referentnog koordinatnog
sistema Ox0y0z0 [7]. Poznavajući položaj tačke P u pokretnom koordinatnom sistemu,
preko vektora položaja p odredimo sada položaj tačke P u odnosu na referentni koordinati
sistem Ox0y0z0 (slika 1.28.):

(1.7) r=Rp+k

gde je:
r - vektor položaja tačke P u koordinatnom sistemu Oxoyozo,
p - vektor položaja tačke P u pokretnom koordinatnom sistemu
k - vektor položaja tačke On u koordinatnom sistemu Oxoyozo,
R - matrica rotacije izmedju dva koordinatna sistema

33
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

U relaciji (1.7) vektor položaja r izrazili smo tako što smo vektor p sa leve strane
pomnožili sa matricom rotacije R i sabrali sa vektorom k. Skalarni oblik izraza (1.7) je:

rx  e1x e 2x e 3x   p1  k x 
(1.8)  r  = e e 2y e 3 y  p 2  + k y 
 y   1y
 rz   e1z e 2z e 3z   p 3   k z 

zo z

e3
e2 y
On
e1
k
x
P
O
yo
x0

Slika 1.28. Vektori položaja

U cilju kompaktnijeg pisanja postavimo sada homogenu matricu transformacije reda


4x4 izmedju koordinatnih sistema (pokretnog i nepokretnog) u obliku:

 R k
(1.9) H= 
000 1  tj.

e 1x e 2x e 3x e 4x 
e e2y e3y e 4 y 
(1.10) H =  1y
 e1z e 2z e 3z e 4z 
 
0 0 0 1 
tada se vektorska jednačina (1.7) može pisati u kompaktnijem obliku:

(1.11) r=Hp

34
Kinematika robota
_____________________________________________________________________________________________________________

Skalarni oblik izraza 1.11 je sledeći:


 rx  e1x e 2x e 3x k x   p1 
 r  e e2y e 3y k y  p 2 
(1.12)  y  =  1y
r z   e1z e 2z e 3z k z  p3 
    
1  0 0 0 1  1 
Uvodjenje homogenih matrica transformacija je značajno iz sledećih razloga:

• Odredjuje orijentaciju pokretnog koordinatnog sistema u odnosu na


nepokretni koordinatni sistem.

• Odredjuje poziciju koordinatnog početka pokretnog koordinatnog sistema u


odnosu na nepokretni koordinatni sistem.

• Ako znamo koordinatu neke tačke u pokretnom koordinatnom sistemu, tada


pomoću homogenih matrica transformacije možemo napisati koordinatu iste
tačke u nepokretnom koordinatnom sistemu.

Prema tome, ukoliko postoji više koordinatnih sistema, vektor položaja neke tačke
izražava se samo preko proizvoda homogenih matrica transformacije (1.11), umesto preko
sukcesivnog množenja i sabiranja kao u relaciji (1.7), pa iz tog razloga homogene matrice
transformacije se redovno koriste pri kinematičkom modeliranju manipulacionih robota.

1.3.3. Denavit-Hartenbergova transformaciona matrica


Za transformaciju unutrašnjih koordinata u spoljašnje primenjujemo Denavit-
Hartenbergovu transformacionu matricu. Navedeni postupak Denavit i Hartenberg
publikovali su 1955 god. i zato je i nazvan kao Denavit-Hartenbergovu transformaciona
matrica. Suština postupka je to da dva proizvoljna koordinatna sistema se uvek mogu
dovesti do preklapanja sa dve rotacije i dve translacije.

Posmatrajmo prost, otvoren kinematički lanac sa n segmenata. Svaki segment se


opisuje sa tri parametra:
- dužinom ai zajedničke normale izmedju osa i-tog i i+1-vog zgloba,

35
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

- uglom zaokretanja αi izmedju osa i-tog i i+1-vog zgloba u ravni upravnoj na ai - po


pravilu desne ruke
- svaka osa zgloba ima dve normale ai-1 i ai, rastojanje izmedju njih duž ose i-tog
zgloba označićemo sa di.

Za rešavanje direktnog kinematičkog problema tj. za transformaciju unutrašnjih


koordinata u spoljašnje potrebno je odrediti Denavit-Hartenbergovu matricu transformacije
(D matrica), u tom cilju na svaki rotacioni zglob segmenta postavimo po jedan pravougli
koordinatni sistem (slika 1.29.) i to prema sledećim pravilima:

1.- Koordinatni početak Oi,xi, yi, zi se postavlja u tačku preseka zajedničke normale
izmedju ose i-tog i i+1-vog zgloba i same ose i+1-vog zgloba. U slučaju ako se ose
zglobova seku, koordinatni početak Oi,xi, yizi se postavlja u tačku preseka osa,
- osa zi se poklapa sa osom i+1-vog zgloba,
- osa xi se postavlja duž zajedničke normale izmedju osa i-tog i i+1-vog zgloba i
orijentisana je od i-tog ka i+1-vom zglobu.
- osa yi zadovoljava uslov: xi x yi = zi.

2.- Koordinatni početak Oi-1xi-1yi-1zi-1 se postavlja u tačku preseka zajedničke


normale izmedju osa i-1-vog i i-tog zgloba i same ose i-tog zgloba,
- osa zi-1 se postavlja u pravcu ose zgloba i,
- osa xi-1 se postavlja duž zajedničke normale izmedju osa i-1-vog i i-tog zgloba i
orijentisana je od i-1-vog ka i-tom zglobu,
- osa yi-1 zadovoljava uslov: xi x yi = zi.

Unutrašnja koordinata qi rotacionog zgloba je ugao izmedju osa xi-1 i xi (pravilo


desne ruke), jednaka je nuli kada su ose paralelne ili imaju isti smer.Ugao zakretanja αi se
meri od ose zi-1 do zi, tj. kao ugao zaokretanja oko ose xi (po pravilu desne ruke).

Veličine αi, ai i di (i = 1,2,...,n) se zovu Denavit-Hartenbergovi kinematički


parametri.

36
Kinematika robota
_____________________________________________________________________________________________________________

Zglob i-1 Zglob i Zglob i+1


qi-1 qi qi+1
αi
Segment i-1
Segment i

ai zi

Oi
di zi-1 yi xi

zi-2 yi-1
xi-1
a i-1 Oi-1
Oi-2

Slika 1.29. Koordinatni sistemi po Denavit-Hartenbergovom postupku

Koordinatni sistem Oi-1xi-1yi-1zi-1 može sada sa dve translacije i dve rotacije preklopiti
sa koordinatnim sistemom Oixiyizi i to prema sledećim fazama:

1. Rotacija ose xi-1 oko ose zi-1 ugao q i (za translatorni zglob θi), sada osa xi-1 postaje
paralelna sa osom xi (sika 1.30.).

Ova rotacija se može opisati sa sledećom homogenom matricom transformacije (koja


se očitava sa slike 1.30.):

37
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

cos q i − sin q i 0 0
 sin q cos q i 0 0
(1.13) D(qi) =  i

 0 0 1 0
 
 0 0 0 1

Zglob i-1 Zglob i Zglob i+1


qi-1 qi qi+1
αi
Segment i-1
Segment i

ai zi

Oi
di zi-1 yi xi

zi-2 yi-1

a i-1 Oi-1 xi-1


qi
Oi-2

Slika 1.30. Prikaz rotacije koordinatnog sistema Oi-1xi-1yi-1zi-1 za qi

2. Translacija za di (qi za translatorni zglob) duž ose zi-1 do preseka osa zi-1 i xi, sada
osa xi-1 se poklapa sa osom xi (slika 1.31.).

Ova translacija se može opisati sa sledećom homogenom matricom transformacije


(koja se očitava sa slike 1.31.):

38
Kinematika robota
_____________________________________________________________________________________________________________

1 0 0 0
0 1 0 0 
(1.14) D(di) = 
0 0 1 di 
 
0 0 0 1

Zglob i-1 Zglob i Zglob i+1


qi-1 qi qi+1
αi
Segment i-1
Segment i
zi-1
ai zi
yi-1

xi-1 Oi
di yi xi

zi-2

a i-1 Oi-1
Oi-2

Slika 1.31. Prikaz translacije rotiranog koordinatnog sistema Oi-1xi-1yi-1zi-1 za di

3. Translacija duž ose xi-1 za ai (dolazi do preklapanja početaka koordinatnih sistema,


slika 1.32.).

Ova translacija se može opisati sa sledećom homogenom matricom transformacije


(koja se očitava sa slike 1.32.):

39
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

1 0 0 ai 
0 1 0 0 
(1.15) D(ai) = 
0 0 1 0
 
0 0 0 1

Zglob i-1 Zglob i Zglob i+1


qi-1 qi qi+1
αi
Segment i-1
Segment i

ai zi-1 zi

yi-1
Oi
xi-1
xi
di yi

zi-2

a i-1 Oi-1
Oi-2

Slika 1.32. Prikaz translacije koordinatnog sistema Oi-1xi-1yi-1yi-1 za ai

4. Rotacija oko ose xi za ugao αi (po pravilu desne ruke), dolazi do preklapanja
koordinatnih sistema Oi-1xi-1yi-1zi-1 i Oixiyizi (sl. 1.33). Ova rotacija se može opisati
sledećom homogenom matricom transformacije:

40
Kinematika robota
_____________________________________________________________________________________________________________

1 0 0 0
0 cos α − sin α i 0
(1.16) D(α i) =  i

0 sin α i cos α i 0
 
0 0 0 1

Zglob i-1 Zglob i Zglob i+1


qi-1 qi qi+1

Segment i-1
Segment i

ai αi zi, zi-1

Oi
xi, xi-1
di yi, yi-1

zi-2

a i-1 Oi-1
Oi-2

Slika 1.33. Prikaz rotacije koordinatnog sistema za ugao αi

Gore prikazani niz transformacija i rotacija se može predstaviti kao proizvod sledećih
homogenih matrica transformacije D:
i-1
(1.17) Di = D(qi) D(di) D(ai) D(αi)

Zamenom matrica (1.13), (1.14), (1.15) i (1.16) u (1.17) i množenjem dobijamo


Denavit-Hartenbergovu homogenu matricu transformacije izmedju i-tog i i-1-vog
koordinatnog sistema koji odgovara rotacionom kinematičkom paru:

41
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

cos q i − sin q i cos α i sin q i sin α i a i cos q i 


 sin q cos q i cos α i − cos q i sin α i a i sin q i 
(1.18) i-1
Di =  i

 0 sin α i cos α i di 
 
 0 0 0 1 

U slučaju translatornog kinematičkog para koordinatni sistemi se usvajaju tako da je


ai= 0, rastojanje di postaje unutrašnja koordinata qi, a ono što je kod rotacionog zgloba
ugao zakretanja qi sada postaje fiksan parametar označen sa θi , tj.:
ai = 0
di = q i
qi = θ i

Tako da homogena matrica transformacije u slučaju translatornog kinematičkog para glasi:

cos θi − sin θi cos α i sin θi sin α i 0


 sin θ cos θi cos α i − cos θi sin α i 0 
(1.19) i-1
Di =  i

 0 sin α i cos α i qi 
 
 0 0 0 1

Kada su poznate D homogene matrice transformacije izmedju susednih segmenata, tada


homogena matrica transformacije izmedju nepokretnog koordinatnog sistema (vezanog za
bazu manipulacionog robota) i koordinatnog sistema hvataljke (n-tog sistema) se dobija
kao proizvod D homogenih matrica transformacije izmedju susednih segmenata:

0
Tn =0 D11 D 2 2 D3 ...n − 2 D n −1 n −1 D
(1.20)

Prve tri kolone homogene matrice tansformacije oTn predstavljaju matricu rotacije
izmedju koordinatnog sistema hvataljke i nepokretnog sistema manipulacionog robota a
četvrta kolona matrice oTn predstavlja projekciju vektora položaja hvataljke robota u
nepokretnom koordinatnom sistemu tj. Dekartove koordinate vrha manipulatora (pošto se
koordinatni početak n-tog sistema smešta na vrh hvataljke).
42
Kinematika robota
_____________________________________________________________________________________________________________

Kada se za dati manipulacioni robot izvrši pridruživanje koordinatnih sistema,


odrede Denavit-Hartenberg-ovi parametri αi, ai, di, (i = 1,2,...,n), tada homogene matrice
transformacije (1.18) i (1.19) postaju funkcije samo unutrašnjih koordinata qi. Ako se za
odredjeni manipulacioni robot izvrši odredjivanje brojnih vrednosti matrice oTn tada je
moguće iz prve tri kolone matrice dobiti vrednosti tri (modifikovana) Eulerova ugla, što
zajedno sa Dekartovim koordinatama vrha hvataljke čini spoljašnje koordinate
manipulacionog robota [1].

 x
 0R y 
(1.21.) 0
Tn =  n

 z
0 0 0 1 

Na taj način, kada se odrede Dekartove koordinate vrha hvataljke i tri Eulerova ugla
tada je u potpunosti rešen direktan kinematički problem.

Prema tome može se konstatovati da odredjivanje matrice oTn za zadati vektor


unutrašjih koordinata predstavlja, osnovni deo direktnog kinematičkog problema.
Odredjivanje Eulerovih uglova za zadatu matricu oTn ne zavisi od tipa manipulacionog
robota.

Napomena: Kod manipulacionog robota uglovi αi su obično 0o ili 6 90o, tj. ose
i-1
zglobova su ili paralelne ili upravne tako da se analitički oblik elemenata Di matrica
(1.18) i (1.19) znatno pojednostavljuje.

43
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

1.3.4. Odredjivanje orientacije hvataljke


Orijentacija hvataljke manipulacionog robota u odnosu na nepokretan koordinatni
sistem vezanog za bazu robota vrši se preko tri modifikovana Eulerova ugla ψ, θ, ϕ [1].
Posmatrajmo dva koordinatna sistema i rotaciju izmedju njih:
- koordinatni sistem Oxoyozo je nepokretan i vezan za bazu robota,
- koordinatni sistem Onxyz je pokretan i pridružen hvataljci robota.
Matrica rotacije 0Rn koja preslikava koordinate iz sistema Onxyz u sistem Oxoyozo je
oblika:
e1x e2x e 3x 
(1.22) 0
R n = e1y e2y e 3 y 
 e1z e 2z e 3z 

Rotacija koordinatnog sistema Onxyz u odnosu na sistem Oxoyozo se može prikazati


sa sledećim nizom rotacija (3 rotacije):

1. Rotacija koordinatnog sistema Onxyz za ugao skretanja ψ oko ose z (slika 1.34.):

z=z'

On

Ψ
y'
Ψ

x x' y

Slika 1.34. Rotacija pokretnog koordinatnog sistema za ugao skretanja ψ


44
Kinematika robota
_____________________________________________________________________________________________________________

Ovoj rotaciji odgovara sledeća matrica rotacije R(ψ) (direktno se očitava sa slike 1.34.):

cos ψ − sin ψ 0
(1.23) R (ψ ) =  sin ψ cos ψ 0
 0 0 1

2. Rotacija pokretnog koordinatnog sistema Onx'y'z' za ugao propinjanja θ oko ose y'
(slika 1.35).

z' Θ z"

y'=y"
On Θ

x'
Θ

x"

Slika 1.35. Rotacija pokretnog koordinatog sistema za ugao propinjanja θ

Ovoj rotaciji odgovara sledeća matrica rotacije R(θ):

 cos θ 0 sin θ 
(1.24) R(θ) =  0 1 0 
− sin θ 0 cos θ

45
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

3. Rotacija pokretnog koordinatnog sistema Onx''y''z'' za ugao valjanja ϕ oko ose x''
(slika 1.36.):

z"' z"
ϕ
y'"

ϕ
On
y"

ϕ x''=x'"

Slika 1.36. Rotacija pokretnog koordinatnog sistema za ugao valjanja ϕ

Ovoj rotaciji odgovara sledeća matrica rotacije R(ϕ) :

1 0 0 
0 cos ϕ − sin ϕ
(1.25) R(ϕ) =  
0 sin ϕ cos ϕ 

Sve tri rotacije zajedno su date na slici 1.37.

Navedeni niz rotacija (1), (2) i (3) odgovara sledećem proizvodu matrica transformacija:

(1.26)
o
R n = R (ψ )R (θ)R (ϕ)

46
Kinematika robota
_____________________________________________________________________________________________________________

z, z'
z''' 1
z"
Ψ
ϕ Θ
2
3

On y'''

3 ϕ

1
Θ
1
2 Ψ y', y"
x Ψ 2
x' Θ y

3 ϕ
x", x'"

Slika 1.37. Modifikovani Eulerovi uglovi

Zamenom matrica rotacije (1.23), (1.24) i (1.25) u matricu (1.26) sledi:

cos ψ − sin ψ 0  cos θ 0 sin θ  1 0 0 


o  
R n =  sin ψ cos ψ 0  0 1  
0  0 cos ϕ − sin ϕ
(1.27)
 0 0 1 − sin θ 0 cos θ 0 sin ϕ cos ϕ 

(1.28)

cos ψ cos θ cos ψ sin θ sin ϕ − sin ψ cos ϕ cos ψ sin θ cos ϕ + sin ψ sin ϕ
o
R n =  sin ψ cos θ sin ψ sin θ sin ϕ + cos ψ cos ϕ sin ψ sin θ cos ϕ − cos ψ sin ϕ
 − sin θ cos θ sin ϕ cos θ cos ϕ 

47
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Izjednačavanjem izraza (1.22.) i (1.28) sledi:


(1.29)
 e 1x e 2x e 3 x  cos ψ cos θ cos ψ sin θ sin ϕ − sin ψ cos ϕ cos ψ sin θ cos ϕ + sin ψ sin ϕ
e e 2y e 3 y  =  sin ψ cos θ sin ψ sin θ sin ϕ + cos ψc cos ϕ sin ψ sin θ cos ϕ − cos ψ sin ϕ
 1y
 e1z e 2z e 3z   − sin θ cos θ sin ϕ cos θ cos ϕ 

Izjednačavanjem pojedinih vredosti elemenata matrica (1.29) dobijamo:

(1.30) e1x = cosψcosθ


(1.31) e1y = sinψcosθ
(1.32) e1z = -sinθ
(1.33) e2x = cosψsinθsinϕ-sinψcosϕ
(1.34) e2y = sinψsinθsinϕ+cosψcosϕ
(1.35) e2z = cosθsinϕ
(1.36) e3x = cosψsinθcosϕ+sinψsinϕ
(1.37) e3y = sinψsinθcosϕ-cosψsinϕ
(1.38) e3z = cosθcosϕ

Dobili smo sistem od 9 jednačina sa tri nepoznate ψ, θ i ϕ, ove jednačine nisu


nezavisne jer je matrica 0Rn ortogonalna. Uglove ψ, θ i ϕ možemo da odredimo na sledeći
način, [1]:

a.) Množenjem obe strane jednačine (1.30) sa sinψ i (1.31) sa cosψ i oduzimanjem
dobijamo:

(1.39) e1xsinψ- e1ycosψ = 0

i odavde sledi ugao ψ:

e1y
(1.40) ψ = arctg + 2kπ
e1x

48
Kinematika robota
_____________________________________________________________________________________________________________

b.) Ugao θ se može izračunati množenjem (1.30) sa cosϕ i (1.31) sa sinϕ i
sabiranjem ovih izraza:

(1.41) e1xcosψ+ e1ysinψ = cosθ

 − e1z 
(1.42) θ = arctg   + 2kπ
 e1x cos ψ + e1y sin ψ 

c.) Množenjem relacije (1.35) sa cosψ i (1.31) sa sinψ i oduzimanjem sledi:

(1.43) e 2 z cos ϕ − e 3z sin ϕ = 0

e 2z
(1.44) ϕ = arctg + 2kπ
e 3z

Postoji više načina za odredjivanje uglova ψ, θ i ϕ. Pri odredjivanju ovih uglova


mogu nastati problemi ako su veličine u imeniocima relacija (1.40), (1.42) i (1.44) male,
što se može prevazići korišćenjem posebne računarske funkcije. Jedini singularan slučaj
nastaje kada je θ = +/- π/2, odnosno: e1x =e1y = e2z= e3z = 0. U tom slučaju uglovi skretanja
i valjanja odgovaraju istoj rotaciji i odredjen je samo njihov zbir ili razlika. Tada relacija
(1.40) ne daje rešenje za ψ, tako da se ψ može birati proizvoljno. Pošto je ψ izabrano ugao
ϕ se odredjuje prema relacijama:
− e2x
(1.45) ϕ = arctg − ψ + 2 kπ za θ= -kπ/2
e2y

e2x
ϕ = arctg + ψ + 2 kπ
e2 y za θ = kπ/2

Odredjivanje vredosti k u relacijama (1.40), (1.42), (1.44) i (1.45) vrši se tako da se


usvaja princip minimalne promene spoljašnjih koordinata u dve susedne tačke u kojima se
rešava direktan problem, jer kontinualnom kretanju manipulacionog robota mora
odgovarati kontinualna promena spojašnjih koordinata [1].

49
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Izračunavanjem uglova ψ, θ i ϕ prema relacijama (1.40), (1.42) i (1.44) odredjena je


orijentacija hvataljke manipulacionog robota.

Odredjivanjem:

• Dekartovih koordinata vrha hvataljke robota (pozicioniranje) i

• tri modifikovana Eulerova ugla (orijentacija)


u potpunosti je rešen direktan kinematički problem.

50
Kinematika robota
_____________________________________________________________________________________________________________

1.4. INVERZAN KINEMATIČKI PROBLEM

1.4.1. Uvod
Odredjivanje vektora unutrašnjih koordinata q za zadati vektor spoljašnjih koordinata
s je inverzan kinematički problem.

Manipulacioni roboti se pokreću posredstvom različitih tipova aktuatora i to tako da


najčešće jedan aktuator pokreće jedan zglob robota. Kretanje aktuatora se pretvara u
kretanje translatornog ili rotacionog zgloba. Svaki aktuator ima svoj servosistem koji
upravlja kretanjem aktuatora i ostvaruje njegovu željenu poziciju, što znači da za svaki
aktuator treba zadati poziciju koju aktuator treba da postigne. Potrebno je za svaki zglob
definisati unutrašnju koordinatu koju treba postići i ovu željenu koordinatu zadati na ulaz
odgovarajućeg servo sistema. Pošto se planiranje trajektorija obično vrši u spoljašnjim
koordinatama, to radi realizacije gornjih zahteva potrebno je spoljašnje koordinate s
preračunati u unutrašnje koordinate q.

Prema tome inverzan kinematički problem obuhvata odredjivanje unutrašnjih


koordinata koje odgovaraju zadatoj poziciji i orijentaciji hvataljke opisanih vektorom
spoljašnjih koordinata:

(1.46) q = f -1(s)

51
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Ako je zadat položaj vrha tj. pozicija hvataljke (x, y, z) kao i orijentacija hvataljke
(ψ, θ, ϕ) tada je u potpunosti odredjena homogena matrica transformacije 0Tn izmedju
nepokretnog koordinatnog sistema vezanog za bazu manipulacionog robota i pokretnog
koordinatnog sistema hvataljke tj. n-tog sistema, tako da rešavanje inverznog kinematičkog
problema možemo predstaviti i na sledeći način:

(1.47) q = f -1(oTn)

Rešavanje inverznog zadatka neuporedivo je složenije od rešavanja direktnog


kinematičkog problema i ekvivalentno je traženju rešenja skupa nelinearnih jednačina, jer
je vektorska funkcija "f " koja povezuje spojašnje i unutrašnje koordinate nelinearna
trigonometrijska funkcija. Složenost problematike rešavanja inverznog zadatka u
mnogome zavisi od samog kinematičkog lanca a odredjivanje inverzne vektorske funkcije
f -1 zavisi i od dimenzija vektora s i q, tako da su moguća tri slučaja [3]:
a. Broj spoljašnjih koordinata jednak je broju unutrašnjih koordinata, tj. m = n, tada
je moguće jednoznačno odrediti q koje odgovara datom s (sem u singularnim
položajima).
b. Ako je m>n, tada nije moguće odrediti q koje zadovoljava s (osim u specijalnim
slučajevima).
c. Ako je m<n, tada posmatramo redundantne manipulacione robote i postoji više
rešenja za q koje zadovoljava dato s.

Za redundantne manipulatore, u opštem slučaju rešenje inverznog problema nije


jednoznačno, već postoji konačan skup rešenja za unutrašnje koordinate koji odgovaraju
istoj poziciji i orijentaciji hvataljke.
Pri rešavanju inverznog kinematičkog problema razlikujemo dva pristupa:

1. Analitičko rešavanje inverznog problema.

2. Numeričko rešavanje zadatka.

Kod prvog pristupa vektor unutrašnjih koordinata se dobija u analitičkom obliku svaki
manipulacioni robot posebno, a kod drugog pristupa rešenje se traži poznatim metodama
numeričke analize i ne zavisi od tipa manipulacionog robota.
52
Kinematika robota
_____________________________________________________________________________________________________________

1.4.2. Analitičko rešenje inverznog kinematičkog problema


Pošto je vektorska funkcija f, koja preslikava unutrašnje koordinate u spoljašnje,
složena nelinearna funkcija od n promenljivih, to sledi da je analitičko odredjivanje
-1
inverzne vektorske funkcije f relativno složen problem, koji se ne može rešiti u opštem
slučaju za proizvoljnu konfiguraciju manipulacionog robota. Tako za neke konfiguracije
robota može da se odredi analitičko rešenje inverznog kinematičkog problema, dok za
druge konfiguracije to nije moguće. Medjutim, mora se konstatovati da za veliku većinu
industrijskih robota koji se proizvode u svetu postoji analitičko rešenje inverznog
kinematičkog problema [1].

Analitičko rešenje inverznog kinematičkog problema (ukoliko može da se dobije za


konkretan manipulacioni robot), ima sledeće prednosti u odnosu na numerička rešenja:

a. Daje sva rešenja (za robote sa 6 stepeni slobode ima 8 rešenja)

b. Daje tačna rešenja bez nagomilavanja numeričke greške.

c. Zahteva znatno manji broj numeričkih operacija, pa je pogodno za primenu u


sintezi kretanja u realnom vremenu.

d. Mogu se direktno prepoznati singularna stanja u kojima manipulacioni robot gubi


jedan ili više stepeni slobode kretanja.

Osnovni nedostatak analitičkog rešenja inverznog kinematičkog problema je to što se


ne može dobiti za proizvoljnu konfiguraciju robota. Analizirajmo načine dobijanja
analitičkih rešenja inverznog kinematičkog problema za manipulacione robote sa 3 i 6
stepeni slobode kretanja [3]:

1. n = 3
Za manipulacione robote sa tri stepena slobode kretanja, kod kojih se dve ose
zglobova medjusobno seku a dve su paralelne, moguće je dobiti analitičko rešenje
inverznog kinematičkog problema tj. eksplicitno odrediti unutrašnje koordinate qi u
funkciji spoljašnjih koordinata.

53
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Medjutim čak i kod robota sa tri (proizvoljna) stepena slobode kretanja nije uvek
moguće naći analitičko rešenje inverznog kinematičkog problema. Dokazano je da se
rešavanje inverznog kinematičkog problema sa tri stepena slobode može svesti, u opštem
slučaju, na traženje nula jednog polinoma četvrtog stepena, što je medjutim, numerički
znatno nepovoljnije u odnosu na slučaj kada postoje eksplicitna rešenja za svaki ugao
posebno.

2. n = 6
Kod manipulacionog robota sa 6 stepeni slobode kretanja, da bi se dobilo inverzno
rešenje u analitičkom obliku, potrebno je da se zadatak podeli u dva nezavisna
potproblema:
- prvi potproblem je odredjivanje rešenja za unutrašnje koordinate za prva tri zgloba
q1, q2 i q3, tj. za minimalnu konfiguraciju manipulacionog robota,
- drugi potproblem je odredjivanje preostale 3 unutrašnje koordinate q4, q5 i q6 koje
su pridružene hvataljci robota.

Analitičko rešavanje inverznog kinematičkog problema se može podeliti na dva


potproblema ako poslednja tri stepena slobode čine sferični zglob tj. sve tri ose se seku u
jednoj tački, što ujedno znači da hvataljka ima jedan segment [3].

U tom slučaju moguće je odrediti poziciju vrha minimalne kofiguracije i analitičko


rešenje inverznog kinematičkog problema za minimalnu konfiguraciju i tako odrediti prve
tri unutrašnje koordinate q1, q2 i q3. Zatim se za poznate vrednosti q1, q2 i q3 odredjuje
orijentacija poslednjeg segmenta i unutrašnje koordinate q4, q5 i q6 sferičnog zgloba
hvataljke tako da se zadovolji zahtevana orijentacija hvataljke.

Na sledećem primeru manipulacionog robota sa 4 stepena slobode kretanja, (n = 4),


[3], pokazaćemo analitičko rešenje inverznog kinematičkog problema (slika 1.38.).

Šematski prikaz ovog robota, cilindričnog tipa RTT minimalne konfiguracije, sa


koordinatama težišta hvataljke je dat na sledećoj slici:
54
Kinematika robota
_____________________________________________________________________________________________________________

l3 q3 l4

c q4
q2
z
l2 q1 zc

o y
yc xc

Slika 1.38. Šematski prikaz manipulacionog robota sa cilindričnom strukturom

Veza (1.4) izmedju spoljašnjih i unutrašnjih koordinata je

x c = (l3 + l 4 + q 4 )cos q1
(1.48) y c = (l3 + l 4 + q 3 )sin q1

zc = q 2 + l2

ϕ=q4
gde su:
s = [x c , y c , z c , ϕ] - vektor spoljašnjih koordinata,
T

xc, yc, zc – koordinate težišta hvataljke,


ϕ - Euler–ov ugao,
li – dužina segmenata robota.

Analitička rešenja inverznog kinematičkog problema (1.46) kod ovog robota


možemo napisati na sledeći način:
y 
q1 = arctg c 
 xc 
q 2 = zc − l2
(1.49)
(
q 3 = x c2 + y c2 )
0. 5
− l3 − l 4
q4 = ϕ

55
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Ovim smo analitičkim putem odredili unutrašnje koordinate qi koje odgovaraju


zadatim spoljašnjim koordinatama si. Kao što je ranije već konstatovano, za neke
konfiguracije manipulacionih robota, kao i kod redundantnih robota, inverzan kinematički
problem nije moguće rešiti analitičkim putem, te se za rešavanje problematike mora
koristiti numerički pristup.

1.4.3. Numerička rešenja inverznog kinematičkog problema


Inverzni kinematički problem kod manipulacionih robota se može rešiti primenom
raznih standardnih numeričkih postupaka. Ovi postupci su opšti i ne zavise od tipa robota.
Za razliku od analitičkog rešenja, za zadat vektor spoljašjih koordinata s oni daju samo
jedno rešenje i to koje je najbliže početnom pogadjanju qo, [3]:

(1.50) q = f-1(s,qo)

Pri rešavanju inverznog kinematičkog problema numeričkim postupcima kod


nerendundantnih robota, kada je broj spoljašnjih koordinata jednak broju unutrašnjih
koordinata (m = n), najviše se koristi Newtonova metoda. Diferencirajmo po vremenu
funkcionalnu vezu izmedju spoljašnjih s i unutrašnjih koordinata q robota:

s = f (q )
(1.51)
 ∂f 
s& =  q&
 ∂q 

Uvedemo li sledeću oznaku:

∂f
(1.52) J (q ) =
∂q
gde je: J(q) Jakobijeva matrica parcijalnih izvoda funkcije f(q) dimenzija nxn.

Izraz (1.51) možemo napisati u obliku:

(1.53) s& = J (q )q&

56
Kinematika robota
_____________________________________________________________________________________________________________

Relacija (1.53) daje vezu izmedju vektora brzina spoljašnjih koordinata s& i vektora
brzina unutrašjih koordinata q& . Za zadate brzine spoljašnjih koordinata na osnovu relacije
(1.53) treba odrediti brzine unutrašnjih koordinata:

(1.54) q& = J −1 (q )s&

Pošto je za neredundantne manipulacione robote Jakobijeva matrica kvadratna može


da se odredi njena inverzna matrica. Inverzna matrica postoji ako je determinanta matrice
J(q) različita od nule. U literaturi su obradjeni različiti postupci kako se rešava problem
singularnih tačaka tj. oni položaji manipulacionog robota za koje je det (J(q)) = 0, tj. u
kojima se ne može odrediti inverzni Jakobijan [3].

Sada se može odrediti vektor brzina unutrašnjih koordinata q& 0 za zadato s& 0 , tako što
se za trenutne vrednosti unutrašnjih koordinata odredi Jakobijan J(q), izvrši se inverzija
matrice J(q) i na osnovu (1.54) izračunava q& 0 za zadato s& 0 .

Ovakav pristup je u literaturi poznat kao diferencijalni pristup i koristi se kod


brzinskog upravljanja manipulacionim robotima, kada operater preko komandne palice
zadaje brzine kretanja hvataljke u pojedinim pravcima ili oko pojedinih pravaca
nepokretnog koordinatnog sistema [3].

Ako je potrebno odrediti unutrašnje koordinate qo koje odgovaraju izračunatoj brzini


q& 0 vrši se integracija:
t + ∆t .
q o (t + ∆t ) = q o (t ) + ∫ q o (τ )dτ
t

U gornjim razmatranjima pretpostavili smo da su zadate brzine spoljašnjih


koordinata s& 0 medjutim često se zadaju željene pozicije manipulacionog robota u
spoljašnjim koordinatama pa je potrebno rešiti inverzni kinematički problem kada je zadata
pozicija so. Inverzni Jakobijan se može iskoristiti za numeričko rešavanje inverznog
kinematičkog problema (po poziciji) primenom Newtonove metode [3]:

57
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

1.4.4. Odredjivanje Jacobijeve matrice


Numeričko rešavanje inverznog kinematičkog problema zahteva odredjivanje
Jakobijeve matrice i njene inverzne matrice [3]. Jakobijeva matrica povezuje:

• brzinu promene unutrašnjih koordinata sa brzinama promene spoljašnjih


koordinata i

• spoljašnje sile koje deluju na hvataljku i momente koji se prenose na zglobove


manipulatora.

Jakobijeva matrica ima veliki značaj u sintezi kretanja manipulacionog robota i


zavisi od tipa vektora spoljašnjih koordinata. U literaturi je pokazano da se Jakobijeve
matrice za sve vrste spoljašnjih koordinata mogu dobiti ukoliko su poznate dve podmatrice
[3] i to:

a. Podmatrica koja odgovara Dekartovim koordinatama JD:

 x& 
y&  = J q& J D ∈ R 3∗n
(1.55)   D

 z& 

b. Podmatrica koja odgovara projekcijama ugaone brzine hvataljke Jω:

ω x 
ω  = J q& J ω ∈ R 3∗n
(1.56)  y ω

 ω z 

Tako da se Jakobijeva matrica može formirati na sledeći način:

J 
(1.57) J= D
Jω 

58
Kinematika robota
_____________________________________________________________________________________________________________

Način odredjivanja Jakobijana prikažimo na primeru manipulacionog robota sa


cilindričnom strukturom (slika 1.38.), [3]. Diferencirajmo po vremenu funkcionalnu vezu
izmedju spoljašnjih i unutrašnjih koordinata manipulacionog robota (1.48):

x& c = −(l3 + l 4 + q 3 )q& 1 sin q1 + q& 3 cos q1


.
y& C = (l3 + l 4 + q 3 )q& 1 cos q1 + q& 3 sin q1
(1.58)
z& C = q& 2
ϕ& = q& 4

Izraz (1.58) možemo da napišemo u matričnom obliku na sledeći način:

 x& C  − (l3 + l 4 + q 3 )sin q1 0 cos q1 0  q& 1 


 y&   (l + l + q )cos q
 C =  3 4 3 1 0 sin q1 0 q& 2 
(1.59)  z& C   0 1 0 0 q& 3 
    
 ϕ&   0 0 0 1 q& 4 

Uporedivši izraze (1.53) i (1.59) sledi Jakobijeva matrica kao:

− (l3 + l 4 + q 3 )sin q1 0 cos q1 0


 (l + l + q )cos q 0 sin q1 0
 3 4 3 1
(1.60) J(q)=  0 1 0 0
 
 0 0 0 1

59
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

1.5. SINTEZA TRAJEKTORIJA MANIPULACIONIH ROBOTA

1.5.1. Uvod
U ovom odeljku posmatraćemo sintezu trajektorija manipulacionih robota na
kinematičkom nivou u odsustvu poremećaja tj. na nominalnom nivou [1]. Trajektorija
hvataljke robota se može zadati na različite načine:

Jedan od načina je preko obučavanja robota, kada operater vodi robot duž željene
trajektorije a upravljački sistem memoriše skup tačaka kroz koji robot prolazi. Ovakav
način zadavanja trajektorije ima niz nedostataka [3].

Drugi način je da operater zada željenu trajektoriju numerički, preko terminala i


odgovarajućeg programskog robotskog jezika. Potrebno je odrediti minimalan i
najpogodniji skup podataka preko koga može da se zada željena trajektorija, time se
olakšava posao operateru i minimizira se broj podataka koji mora da se memoriše [3].

Pored rešavanja direktnog i inverznog kinematičkog problema, sinteza kretanja ima


veliki značaj pri kinematičkom modeliranju manipulacionih robota i najčešće obuhvata [3]:

a. Zadavanje skupa pozicija bilo u prostoru spoljašnjih ili unutrašnjih koordinata kroz
koje hvataljka treba da prodje.

b. Zadavanje trajektorije izmedju ovih tačaka.

60
Kinematika robota
_____________________________________________________________________________________________________________

Izbor skupa tačaka kroz koje hvataljka treba da prodje je uglavnom odredjen
tehnološkim zahtevima, rasporedom objekata i alata, rasporedom prepreka u radnom
prostoru itd. Zadavanje se obično vrši u odnosu na nepokretni koordinatni sistem u bazi
manipulacionog robota. Moguće je naravno ovo zadavanje vršiti u odnosu na nekoliko
fiksnih koordinatnih sistema rasporedjenih u prostoru pogodno u odnosu na alate, a zatim
vršiti preračunavanje spoljašnjih koordinata u odnosu na koordinatni sistem u bazi
manipulatora. Upravljački algoritmi robota zahtevaju pored sinteze trajektorija i
poznavanje brzina, ugaonih brzina, ubrzanja i ugaonih ubrzanja. Sinteza kretanja izmedju
tačaka se obično vrši linearno u prostoru spoljašnjih ili unutrašnjih koordinata [3].

1.5.2. Sinteza kretanja u prostoru spoljašnjih koordinata


Sinteza kretanja u prostoru spoljašnjih koordinata izmedju dve tačke A i B za zadato
vreme τ realizuje se na osnovu relacije [3]:

s( t ) = s A + λ ( t )(s B − s A ) 0≤t≤τ
(1.61)

gde je potrebno na svakom integracionom intervalu ∆t vršiti rešavanje inverznog


kinematičkog problema. Ukoliko se ovo radi u realnom vremenu, (tj. u toku samog
kretanja) moguće je menjati trajektoriju u funkciji stanja različitih senzora. U izrazu (1.61)
λ (t) odredjuje profil brzine vrha manipulatora i može se birati na različite načine (profil
može biti trougaoni, trapezoidni, pravougaoni, parabolični, kosinusni, cikloidni itd).

Posmatrajmo najjednostavniji problem sinteze trajektorije na kinematičkom nivou


izmedju dva zadata položaja robota, definisana sa vektorima spoljašnjih kooridnata sA i sB,
pri čemu vrh hvataljke robota treba da se kreće po pravoj liniji izmedju dva zadata položaja
vrha. Pošto je prava definisana sa dve tačke, to dodatni parametri za definisanje putanje
nisu potrebni, medjutim potrebno je definisati promenu brzine vrha hvataljke duž prave.
Ako se predpostavi da brzina vrha hvataljke u početnoj i krajnjoj poziciji treba da bude
jednaka nuli, može se usvojiti trougaoni profil brzine, trapezoidni, parabolični i cikloidni
profil brzine.

61
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Kada se na ovaj način generišu trajektorije u spoljašnjim koordinatama, tada je


potrebno odrediti unutrašnje koordinate u zglobovima manipulacionog robota. Ovo
preračunavanje može da se realizuje na tri načina [3]:

a. Rešavanjem inverznog kinematičkog problema primenom relacije (1.46) nalazeći


analitička ili numerička rešenja. U tom slučaju dobijaju se trajektorije zglobova
q10 (t ) čijim diferenciranjem se dobijaju brzine q&10 (t ) i ubrzanja q&&10 (t ) duž trajektorija

za zglobove robota.
0 0
b. Primenom relacije (1.53), na osnovu s&1 (t ) izračunavamo q&1 (t ) čijom integracijom
0 0
dobijamo trajektorije zglobva q1 (t ) a diferenciranjem ubrzanja zglobova q&&1 (t ) duž
trajektorija.

c. Diferenciranjem relacije (1.54) po vremenu sledi:


∂J 2
(1.62) &s& = Jq
&& + q&
∂q
iz ove veze mogu se odrediti ubrzanja zglobova koja odgovaraju ubrzanju spoljašnjih
koordinata &s&0 (t ) :

 ∂J 
(1.63) && = J −1 &s& − q& 2 
q
 ∂q 

Sada izračunavamo ubrzanje zglobova duž zadate trajektorije q&&0 (t ) čijom


0
integracijom dobijamo brzine q& (t ) duž trajektorija zglobova, a integracijom brzine dobija

se trajektorija zgloba q10 (t ) , pri tome se podrazumeva da duž izabrane trajektrije nema
singularnih tačaka. Treba takodje ukazati na složenost odredjivanja matrice ∂J / ∂q .

1.5.3. Sinteza kretanja u prostoru unutrašnjih koordinata


Ukoliko se radi o sintezi kretanja izmedju dve tačke u prostoru unutrašnjih
koordinata tada koristimo relaciju [1]:

(1.64) q(t) = q A + λ(t)(q B − q A ) 0≤t≤τ

62
Kinematika robota
_____________________________________________________________________________________________________________

gde su:
qA i qB vektori unutrašnjih uglova u početnoj i krajnjoj tački.

Važno je istaći činjenicu da linearna promena unutrašnjih koordinata ne obezbedjuje


linearnu promenu spoljašnjih koordinata tj. pravolinijsko kretanje.

Generisanje trajektorija u spoljašnjim i unutrašnjim koordinatama može se obavljati:


off-line
tj. u fazi pripreme, obučavanja robota, pa se zatim trajektorija memoriše, ili pak:

on – line
tj. tokom kretanja robota duž željene trajektorije, što zavisi od tipa zadatka i od
mogućnosti upravljačkog sistema [3].

Sintezu trajektorija manipulacionog robota moguće je vršiti na više načina i ovaj


problem predstavlja oblast intenzivnog istrživanja. Problem postaje složen ukoliko vreme
kretanja nije zadato već ga treba minimizirati. Problem minimizacije vremena kretanja duž
zadate putanje i optimalne raspodele brzine vrha hvataljke robota sa stanovišta vremena ili
energije može se tretirati na bazi kompletnog dinamičkog modela manipulacionog robota
[1].

Napomena: Kompletna sinteza kretanja za robot tipa SCARA u unutrašnjim


koordinatama je prikazana u trećem poglavlju.

63
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

1.6. REKURZIVNA KINEMATIKA MANIPULACIONIH ROBOTA

1.6.1. Odredjivanje brzine i ubrzanja pri složenom kretanju tačke


U cilju postavljanja dinamičkog modela potrebno je prethodno razmotriti kinematičko
modeliranje i odredjivanje kinematičkih veličina – brzina i ubrzanja pri složenom kretanju
tačke. Posmatrajmo kretanje tačke P u nepokretnom Oxoyozo i pokretnom O ∗ x ∗ y ∗ z ∗
koordinatnom sistemu [22]. Predpostavićemo da pokretni koordinatni sistem u odnosu na
nepokretni vrši i translatorno i obrtno kretanje. Apsolutno kretanje tačke P opisuje se
vektorom položaja r, dok se položaj tačke u odnosu na pokretni koordinatni sistem opisuje
vektorom položaja r ∗ . Koordinatni početak pokretnog koordinatnog sistema O∗ u odnosu
na nepokretni, zadaje se vektorom položaja h (slika 1.39):

Slika 1.39. Prikaz nepokretnog i pokretnog koordinatnog sistema


64
Kinematika robota
_____________________________________________________________________________________________________________

Izmedju vektora r, r ∗ i h postoji veza u obliku:

(1.65) r = h + r∗

Ako uvedemo sledeće oznake:

d( )
- diferenciranje po vremenu u odnosu na nepokretni koordinatni sistem,
dt

d∗ ( )
- diferenciranje po vremenu u odnosu na pokretni koordinatni sistem,
dt

ω - ugaona brzina pokretnog koordinatnog sistema,

tada diferenciranjem relacije (1.65) po vremenu sledi:

dr dh d r ∗
(1.66) = +
dt dt dt

pošto je:
dr
(1.67) = v - vektor apsolutne brzine tačke P, i
dt

d r ∗ d ∗r ∗
(1.68) = + ωxr ∗
dt dt

to izraz (1.66) za apsolutnu brzinu tačke P možemo napisati u sledećem obliku:

dh d ∗r ∗
(1.69) v= + ωxr ∗ +
dt dt

Diferenciranjem relacije za brzinu (1.69) po vremenu dobijamo apsolutno ubrzanje


tačke P:

d  d ∗r ∗ 
(1.70) a=
dv d 2 h d
dt dt dt
(
= 2 + ωxr ∗ +  )
dt  dt 

65
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

 d ∗r ∗ 
(1.71)
d
dt
(
ω xr ∗ = )
dω *
dt
xr + ωx  + ωxr ∗ 
 dt 

d  d ∗ r ∗  d ∗2 r ∗ d ∗r ∗
(1.72)   = + ω x
dt  dt  dt 2 dt

Zamenom izraza (1.71) i (1.72) u izraz (1.70) i sredjivanjem dobijamo izraz za


apsolutno ubrzanje P u obliku:

r ∗2 r ∗ d ∗r ∗
(1.73) a=
d 2h
+ ω
& xr ∗
+ ω x ω(xr ∗
)
+ + 2ω x
dt 2 dt 2 dt

Pojedini članovi izraza (1.69) i (1.73) predstavljaju:


dh
+ ωx r ∗ = v p - prenosnu brzinu tačke P,
dt

d ∗r ∗
= v r - relativnu brzinu tačke P,
dt

d 2h
dt 2
( )
& x r ∗ + ωx ωxr ∗ = a p - prenosno ubrzanje tačke P,

d ∗2 r ∗
= a r - relativno ubrzanje tačke P, i
dt 2

d ∗r ∗
2ωx = a c - Coriolis-ovog ubrzanje tačke P.
dt

Izvedene relacije za brzine i ubrzanja pri složenom kretanju tačke iskoristićemo pri
formiranju kinematičkog modela robota.

66
Kinematika robota
_____________________________________________________________________________________________________________

2.2.2 Rekurzivni kinematički model robota


Pri izvodjenju rekurzivnog kinematičkog modela robota pokretni koordinatni sistemi
se usvajaju prema Denavit-Hartenberg-ovom postupku. Kinematiku segmenata opisujemo
u nepokretnom koordinatnom sistemu koji je vezan za bazu robota. Posmatrajmo i-ti
segment mehanizma manipulacionog robota sa i-tom i (i+1)-vom zglobnom vezom (Slika
1.40.). Uvešćemo sledeća obeležavanja [22].
Oxoyozo – nepokretni koordinatni sistem vezan za bazu robota,
Oi-1 - koordinatni početak (i-1)-vog koordinatnog sistema,
zi-1 - vektor ose zgloba i,
pi-1 –vektor položaja koordinatnog početka Oi-1 u odnosu na nepokretni koordinatni
sistem Oxoyozo,
vi-1 – vektor brzine tačke Oi-1,
Oi – koordinatni početak i-tog koordinatnog sistema,
zi - vektor ose zgloba i+1,
pi –vektor položaja koordinatnog početka Oi u odnosu na nepokretni koordinatni
sistem Oxoyozo,
p∗i – vektor položaja koordinatnog početka Oi u odnosu na Oi-1,

s i - vektor položaja centra mase i-tog segmenta u odnosu na Oi,


q i - unutrašnja koordinata zgloba i,
vi – apsolutna brzina tačke Oi
ωi – apsolutna ugaona brzina segmenta i,

ωi - relativna ugaona brzina segmenta i,
ωi − 1 – prenosna ugaona brzina segmenta i-1,

ω
& i - apsolutno ugaono ubrzanje segmenta i,
ai – apsolutno ubrzanje tačke Oi,
ai-1- apsolutno ubrzanje tačke Oi-1,
v – apsolutna brzina centra mase i-tog segmenta,
i

a i - apsolutno ubrzanje centra mase i-tog segmenta

67
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Položaj koordinatnih početaka Oi i Oi-1 u nepokretnom koordinatnom sistemu


odredjen je vektorima pi i pi-1. Relativni položaj tačke Oi u odnosu na Oi-1 u nepokretnom
koordinatnom sistemu se odredjuje vektorom p ∗ i . Koordinatni sistem Oi-1xi-1yi-1zi-1 je
povezan sa osom i-tog zgloba i ima u odnosu na nepokretni koordinatni sistem brzinu vi-1 i
ugaonu brzinu ω i−1 . Sistemi koordinata Oi-1xi-1yi-1zi-1 i Oixiyizi povezani su sa (i-1)-vim i i-
tim segmentima.

ai
segment i zi vi
ai −1 v i −1
zi-1 ci s-i zglob i+1
*
xi oi yi
pi
yi-1
oi-1 segment (i+1)
xi-1 zglob i
segment (i-1)

pi

pi −1

z0

o0 y0

x0

Slika 1.40. Prikaz vektora segmenta i

68
Kinematika robota
_____________________________________________________________________________________________________________

Rekurzivnim kinematičkim relacijama odredjujemo brzinu i ubrzanje tačke Oi


segmenta i kao i ugaonu brzinu i ugaono ubrzanje segmenta “i”, ako su ove veličine
poznate kod segmenta “i-1”. Ovi izrazi se izvode primenom osnovnih relacija kinematike
krutog tela. Kretanje (i-1)-vog segmenta smatraćemo prenosnim kretanjem a kretanje u i-
tom zglobu relativnim kretanjem [2]. Apsolutna ugaona brzina segmenta “i” ω i jednaka je
vektorskom zbiru njegove prenosne ω i-1 i relativne ugaone brzine ω∗i :


(1.74) ω i = ω i−1 + ω i

diferenciranjem izraza (1.74) po vremenu dobija se zavisnost izmedju ugaonih


ubrzanja segmenta “i” i “i-1”:

dω1 dω i −1 d ω ∗ i
(1.75) = +
dt dt dt

dω i
(1.76) =ω
& i - apsolutno ugaono ubrzanje segmenta i,
dt

dω i −1
(1.77) =ω
& i −1 - apsolutno ugaono ubrzanje segmenta i-1,
dt

∗ ∗
dω i d ∗ω i ∗
(1.78) = + ω i −1 × ω i
dt dt

Zamenom (1.76), (1.77) i (1.78) u (1.75) sledi izraz za apsolutno ugaono ubrzanje
segmenta “i”:

d ∗ω i ∗
(1.79) &i =ω
ω & i −1 + + ω i −1 × ω i
dt

Važno je konstatovati da oznaka za diferenciranje d ∗ ( ) /dt se odnosi na pokretni


koordinatni sistem Oi-1xi-1yi-1zi-1.

Na osnovu relacija (1.69) apsolutna brzina tačke Oi se može izraziti na sledeći način:

69
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

d ∗p ∗ i
(1.80) v i = v i −1 + ω i −1 × p ∗ i +
dt

Apsolutno ubrzanje tačke Oi na osnovu relacije (1.73) je:

 ∗ d ∗2 p ∗i d ∗ p ∗i
(1.81) & ∗
 
a i = a i −1 + ω i −1 × p i + ω i −1 ×  ω i −1 × p i  + 2
+ 2ω i −1 ×
  dt dt

Pošto je za nulti nepokretan segment kinematičkog lanca, tj. za bazu robota koji je
fiksiran na platformi: vo = 0, ωo = 0, ω
& 0 = 0 , a gravitaciono ubrzanje: ao = g, (g=9.8062

m/s2) , tada rekurzivni izrazi (1.74), (1.79), (1.80) i (1.81) omogućuju da se postepeno
odrede kinematičke veličine kompletnog lanca manipulacionog robota idući od prvog ka
poslednjem segmentu.

Izvedeni izrazi (1.74), (1.79), (1.80) i (1.81) važe samo za kinematički par sa
rotacionim zglobom, slični izrazi se mogu izvesti i za kinematički par sa translatornim
zglobom. Možemo medjutim na pogodan način, pomoću tzv. indikatora definisati tip
zglobova kojima su segmenti vezani. Uvedimo u tom cilju niz indikatora ξ i i definišimo ih
na sledeći način [2]:
 0, ako je zglob rotacioni
ξi = 
 1, ako je zglob translatorni

Na ovaj način zadavanjem vrednosti niza ξi (i = 1,.....,n), odredjujemo tip zglobova


manipulacionog robota.

Uvodjenjem sledećih obeležavanja:

(1.82) ω ∗i = z i −1 q& i - relativna ugaona brzina segmenta "i"

d ∗ω ∗i
(1.83) = z i−1q
&& i - relativno ugaono ubrzanje segmenta "i", i
dt

70
Kinematika robota
_____________________________________________________________________________________________________________

d ∗p ∗i
(1.84) = ω ∗i × p ∗i
dt

∗ ∗
d ∗2 p ∗i d ω i
(1.85)
dt 2
=
dt
(
× p ∗i + ω i × ω ∗i × p ∗i )

rekurzivne izraze (2.10), (2.15), (2.16) i (2.17) koje važe za rotacione i translatorne
zglobove možemo napisati u obliku:

- za ugaone brzine -
(1.86) ω i = ω i −1 + z i−1q& i (1 − ξ i )

- za ugaona ubrzanja -

 
(1.87) & i =ω
ω && i + ω i−1 × (z i−1q& i ) (1 − ξ i )
& i−1 + z i−1 q
 

- brzina tačke Oi

(1.88) v i = v i−1 + ω i x p ∗i + z i−1q& i ξ i

- ubrzanje tačke Oi -

(1.89) & i × p ∗i + ω i × (ω i × p ∗i ) + [z i−1 q


a i = a i−1 + ω && i + 2ω i × (z i−1 q& i )]ξ i

Na osnovu (2.24) i (2.25) brzina v i i ubrzanje ai centa mase i-tog segmenta, koji je
odredjen vektorom položaja si u odnosu na tačku Oi može da se odredi na sledeći način:

(1.90) v i = v i + ω i × si

(1.91) ai = a i + ω i × si + ω i × (ω i × si )

Relacije koje opisuju kinematiku kretanja i-tog segmenta potrebna su nam pri
formiranju dinamičkog modela manipulatora.

71
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

Literatura

1. M.Vukobratović,D.Stokić, N.Kirćanski, D.Hristić, D.Vujić, M.Djurović


UVOD U ROBOTIKU
Institut Mihajlo Pupin, Beograd, 1986.

2. M. Vukobratović
Primenjena dinamika manipulacionih robota
Tehnička knjiga, Beograd.

3. M.Vukobratović, D.Stokić
UPRAVLJANJE MANIPULACIONIM ROBOTIMA
Serija: Osnovi robotike, Tehnička knjiga, Beograd, 1986.

4. V.Potkonjak
ROBOTIKA
Naučna knjiga, Beograd, 1989.

5. Lantos Béla
ROBOTOK IRÁNYÍTÁSA
Akadémiai Kiadó, Budapest, 1991.

6. G. Arz, A. Lipoth, I. Merksz


ROTOTMANIPULÁTOROK
LSI, Budapest, 1987.

7. J. Volmer
INDUSTRIEROBOER-ENTWICKLUNG
Hüthing,Heidelberg, 1985.
72
Kinematika robota
_____________________________________________________________________________________________________________

8. A. Siegler
ROBOT IRÁNYÍTÁSI MODELLEK
LSI, Budapest, 1987.

9. G. Bögelsack, E. Kallenbach, G. Linnemann


ROBOTER IN DER GERATETECHNIK
VEB Verlag Technik, Berlin, 1984.

10. F. Nagy, A. Siegler


ENGINEERING FOUNDATIONS OF ROBOTICS
Prentice-Hall International, UK, 1987.

11. G. Ašonja
PROGRAM ZA SIMULACIJU KRETANJA OSNOVNE KONFIGURACIJE ROBOTA
»SCARA«, JUROB 89, Zbornik radova, 5,1-5, Opatija, 1989.

12. R. P. Paul
ROBOT MANIPULATORS: MATHEMATICS, PROGRAMMING AND CONTROL
The MIT Press, 1981.

13. J. Lenarčić
KINEMATICS, ENCYCLOPEDIA OF ROBOTICS
New York, 1988

14. Pieper D. L., Roth B.


THE KINEMATICS OF MANIPULATORS UNDER COMPUTER CONTROL
Proc.II Iter.Congress on Theory of Machines and Mechanisms, Vol.2.Zakopane 1969.

15. D. E. Whitney
THE MATHEMATICS OF COORDINATED CONTROL OF PROSTHETIC ARMS
AND MANIPULATORS
Journal of Dynamic Systems, Measurement and Control, Vol.122, 303-309, 1982.

73
Inteligentni roboti i sistemi
_____________________________________________________________________________________________________________

16. Wesley E. S.
INDUSTRIAL ROBOTS
New Jersey, 1985.

17. C. S. G. Lee
ROBOT ARM KINEMATICS
Tutorial on Robotics, IEEE Computer Society, Los Angeles, 1983.

18. R. P. Paul, B. Shimano, G. E. Mayer


KINEMATIC CONTROL EQUATIONS FOR SIMPLE MANIPULATORS
IEEE, Vol.SMC-11, No.6, 449-455, 1981.

19. R. P. Paul
MANIPLATOR CARTESIAN PATH CONTROL
IEEE, Vol.SMC-9, No11, 702-711, 1979.

20. A. Timčenko, N. Kirćanski, M. Vukobratović


SYM-PROGRAMSKI PAKET ZA GENERISANJE SIMBOLIČKIH MODELA
MANIPULATORA, Zbornik VI Jugoslovenskog simpozijuma za primenjenu robotiku i
fleksibilnu automatizaciju, 3-10, Novi Sad, 1989.

21. J. Y. S. Luh, M. W. Walker, R. P. C. Paul


ON-LINE COMPUTATIONAL SCHEME FOR MECHANICAL MANIPULATORS
Journal of Dynamic Systems, Measurement, and Control, Vol.102, 69-76, 1980.

22. A. Šmiarowski, Jr., J. N. Anderson


RECURSIVE ALGORITHM FOR THE THIRD-ORDER MODEL OF ROBOT
IEEE, 8, 1684-1689, 1989.

23. Mešter Djula


MEHANIKA INDUSTRIJSKIH ROBOTA I deo KINEMATIKA ROBOTA
Viša tehnička škola Subotica, 1990.

74

You might also like