Professional Documents
Culture Documents
STJEPAN BOGDAN
VESNA KRAJ^I
OSNOVE
ROBOTIKE
SADR@AJ
PREDGOVOR XI
1. OP]ENITO O ROBOTIMA 1
1.1. Definicije robota 2
1.2. Podjela robota 3
1.2.1. Vrste pogona 3
1.2.2. Geometrija radnog prostora 3
1.2.3. Na~ini upravljanja kretanjem 7
1.3. Karakteristike robota 7
1.3.1. Broj osi 7
1.3.2. Nosivost i brzina 7
1.3.3. Dohvat i hod 8
1.3.4. Orijentacija alata 8
1.3.5. Ponovljivost, preciznost i to~nost 9
1.3.6. Radna okolina 10
1.3.7. Primjer: [kolski robot RHINO XR-3 10
1.4. Primjena robota 12
Pitanja za provjeru znanja 14
2. DIREKTNA KINEMATIKA 15
2.1. Skalarni i vektorski produkti 16
2.2. Koordinatni sustavi 17
2.3. Rotacije 18
2.3.1. Osnovne rotacije 18
2.3.2. Slo`ene rotacije 19
2.4. Homogene koordinate 20
2.4.1. Sustavi homogenih koordinata 20
VI SADR@AJ
4. DINAMIKA MANIPULATORA 47
4.1. Lagrangeova jednad`ba 47
4.2. Kineti~ka energija 48
4.2.1. Tenzor inercije ~lanka 49
4.2.2. Jacobijeva matrica ~lanaka 50
4.2.3. Tenzor inercije manipulatora 52
4.3. Potencijalna energija (gravitacija) 52
4.4. Poop}ena sila 53
4.4.1. Aktuatori 53
4.4.2. Trenje 53
4.5. Lagrange-Eulerov dinami~ki model 55
4.5.1. Primjer: Troosni planarni rotacijski robot (dinamika) 57
4.5.2. Primjer: Peteroosni rotacijski robot RHINO XR-3 (dinamika) 61
4.6. Direktna i inverzna dinamika 64
SADR@AJ VII
5. PLANIRANJE TRAJEKTORIJE 71
5.1. Putanja i trajektorija 71
5.2. Gibanje manipulatora od to~ke do to~ke 72
5.2.1. Planiranje trajektorije za gibanje od to~ke do to~ke 73
5.2.2. Primjer planiranja trajektorije gibanja robota od to~ke do to~ke 74
5.3. Gibanje manipulatora kontinuirano po putanji 75
5.3.1. Primjer planiranja trajektorije za gibanje kontinuirano po putanji 76
5.4. Interpolirano kretanje 77
5.4.1. Interpolacija kubnim polinomima 77
5.5. Pravocrtno gibanje 78
5.5.1. Primjer: Troosni planarni rotacijski robot (trajektorija) 81
5.5.2. Primjer: Peteroosni rotacijski robot RHINO XR-3 (trajektorija) 82
5.6. Interpolacija polinomima tre}eg i ~etvrtog stupnja 82
5.6.1. Ho-Cookova metoda 83
5.6.2. Primjer: Troosni planarni rotacijski robot (Ho-Cookova metoda) 92
Pitanja za provjeru znanja 101
Naj~e{}e se pod pojmom robota razumije industrijski robot, koji se jo{ naziva robot-
ski manipulator ili robotska ruka. Primjer industrijskog robota prikazan je na slici 1.1.
Robot, odnosno robotska ruka mo`e se modelirati u obliku lanca krutih ~lanaka, koji su
me|usobno povezani pokretljivim zglobovima. Tako se kod robota s rotacijskim zglobovi-
ma mo`e uo~iti nagla{ena sli~nost s gra|om ljudske ruke, pa se takvi roboti nazivaju arti-
kulirane robotske ruke. Pojedini ~lanci takvih robota odgovaraju ljudskim grudima, nad-
laktici i podlaktici, a zglobovi ramenu, laktu i ru~nom zglobu.
Na kraju robotske ruke nalazi se zavr{ni mehanizam, slika 1.2., koji se jo{ naziva alat,
prihvatnica ili {aka. Prihvatnica naj~e{}e ima dva prsta ili vi{e prstiju, koji se otvaraju i za-
tvaraju.
Rije~ robot (~e{ki robota rad) prvi je uveo pisac K. ^apek te je pomo}u nje opisao
sljede}i stroj: Stroj vje{t u radu, a pona{a se sli~no ~ovjeku te ponekad ispunjava funkcije
~ovjeka.
Manipulator (lat. manipulus {aka; lat. manus ruka) naj~e{}e je stroj za obavljanje
pomo}nih operacija, koje se odnose na promjenu polo`aja materijala pri obradi i monta`i.
Op}enito je prihva}eno da suvremeni manipulatori vuku porijeklo od izuma G. C. Devola iz
1954. godine, koji je primijenio nov koncept upravljanja strojem za manipulaciju materi-
jalima, zasnovan na u~enju manipulacijskog zadatka u po~etnoj fazi te uzastopnom ponav-
ljanju nau~enog zadatka u fazi eksploatacije. U automatiziranim proizvodnim sustavima
pod manipulatorom se razumije industrijski robot.
Osim naj~e{}e kori{tenih industrijskih robota ~esto se upotrebljavaju i medicinski ro-
botski ure|aji, hodaju}i strojevi te roboti za podmorska, svemirska i ostala istra`ivanja.
1.2. PODJELA ROBOTA 3
Postoji mnogo razli~itih definicija robota, ovisno o mjestu i na~inu primjene. U Sjedi-
njenim Ameri~kim Dr`avama robot se naj~e{}e definira kao automat prilago|en slo`enoj
okolini koji obavlja ili dopunjava jednu radnju ili vi{e radnji ~ovjeka, dok se u Japanu pod
robotom razumije automat s promjenljivim programom koji se koristi za automatizaciju
ru~nih operacija.
Robot se u op}em slu~aju mo`e definirati kao tehni~ki ure|aj sa svrhom obavljanja
nekih kretanja i funkcija koje obavlja ~ovjek, pri ~emu se odlikuje odre|enom samostal-
no{}u, tj. autonomno{}u u radu. U tom smislu mo`e se koristiti i ova, ne{to konkretnija
definicija robota >1@: Robot je programski upravljan mehani~ki ure|aj koji se koristi sen-
zorima za vo|enje jednog zavr{nog mehanizma ili vi{e njih po unaprijed odre|enoj puta-
nji u radnoj okolini s ciljem manipuliranja fizi~kim objektima.
Osi prvih triju zglobova robota odre|uju polo`aj ru~nog zgloba, a osi preostalih triju
zglobova utvr|uju orijentaciju alata. Tako tipovi zglobova upotrijebljenih za prve tri osi
odre|uju geometriju radnog prostora robota. Kod industrijskih robota koriste se dva osnov-
na tipa zglobova: rotacijski i translacijski. Rotacijski zglob rotira oko osi, a translacijski se
linijski giba po osi.
Sl. 1.7. Sferna konfiguracija Sl. 1.8. Industrijski robot sa sfernom konfigu-
robota racijom L-1000 (Fanuc Ltd.)
Kod rotacijskih robota dohvat je ~esto jednak hodu, pa takvi roboti imaju pun radni
prostor. Pri tome je potrebno za{tititi robot od samoo{te}ivanja, jer se rotacijski robot mo`e
programirati tako da udari sam sebe ili da se sudari s predmetima u svojoj radnoj okolini.
Robotski manipulator mo`e se modelirati kao lanac krutih tijela ~lanaka, koji su me-
|usobno povezani zglobovima, kako je prikazano na slici 2.1. Nepomi~na baza robota na-
lazi se na po~etku lanca, a zavr{ni mehanizam ili alat nalazi se na kraju lanca. Takav robot
mo`e obavljati poslove kre}u}i se u trodimenzionalnom prostoru, pri ~emu je nu`no uprav-
ljati polo`ajem i orijentacijom alata. Da bi se to moglo, potrebno je odrediti vezu izme|u
varijabli zglobova robota te polo`aja i orijentacije alata, tj. rije{iti direktni kinemati~ki
problem.
xy x y cos T . (2.3)
Sl. 2.2. Ortonormiran koordinatni Tako skalarni produkt mo`e poslu`iti kao mjera
sustav u R3 orijentacije izme|u dvaju vektora.
2.2. KOORDINATNI SUSTAVI 17
1 v2 v PQJK
3 Nu v u v Q
1 2 2 1
p x k , 1 d k d n .
X
p k
(2.7)
Iz pou~ka 2.2.1. mo`e se vidjeti da je k-ta koordinata vektora p u odnosu prema orto-
normiranom koordinatnom sustavu X skalarni produkt vektora p i k-tog ~lana skupa X.
3. INVERZNA KINEMATIKA:
RJE[AVANJE JEDNAD@BE MANIPULATORA
Lw O L p O
1
wM PM
MNw PQ MNe r PPQ.
qn (3.2)
2 S 3
Na takav na~in posti`e se minimalni prikaz konfiguracije alata, jer vektor w ima samo
{est komponenata. Prve tri komponente predstavljaju polo`aj vrha alata w1 p, a preostale
qn
2 3
tri komponente odre|uju orijentaciju alata w e S r .
U slu~aju zadavanja orijentacije alata pomo}u Eulerovih kuova, tj. zavrtanja, nagiba-
nja i zakretanja, vrijednosti kutova zadaju se izravno jer je rije~ o vizualno jasnim zakreti-
ma oko osi pokretnog koordinatnog sustava alata robota. Konfiguracija alata mo`e se
prikazati u kompaktnom obliku, kako je navedeno u definiciji 3.1.2.
Definicija 3.1.2. (vektor konfiguracije alata): Neka p ozna~ava polo`aj, a R orijen-
taciju vrha alata (definiranu pomo}u rotacija zavrtanja, nagibanja i zakretanja) prema koor-
dinatnom sustavu baze robota. Tada je vektor konfiguracije alata u R6 ovog oblika:
w =
LM w OP = L p O .
1
MNw PQ MN M T \ PQ T (3.3)
2
3.2. PROBLEM INVERZNE KINEMATIKE 39
k T T
n ev j mk v k + Z k
e j Dk Zk
T bq, q g = . (4.3)
k =1 2
Smatraju}i da je masa ~lanaka poznata, potrebno je u jednad`bi za ra~unanje kineti~ke
energije manipulatora odrediti tenzor inercije Dk.
U izrazu za kineti~ku energiju (4.3) tenzor inercije k-tog ~lanka Dk odre|en je u odno-
su prema koordinatnom sustavu baze robota L0. Do tenzora inercije Dk mo`e se do}i tako
da se kineti~ka energija izrazi u odnosu prema koordinatnom sustavu na kraju ~lanka Lk.
U tom slu~aju ishodi{te L0 translatira se u ishodi{te Lck (centar mase ck) te se zatim iz-
ra~una tenzor inercije Dck oko tog centra mase. Tenzor inercije ~lanka k oko svoga centra
mase izra~unan u odnosu prema koordinatnom sustavu Lk ozna~ava se sa Dkc , a dobiva se
translacijom Lk u Lck te izra~unavanjem Dck. Taj je tenzor inercije konstantan, jer koordi-
natni sustav Lk rotira zajedno sa ~lankom k (Lk i Lck jesu jednako orijentirani).
Kako je u izrazu (4.3) kineti~ka energija izra`ena u odnosu prema koordinatnom su-
stavu L0, potrebno je sada linijsku i kutnu brzinu ~lanka k izraziti u odnosu prema koordi-
natnom sustavu Lk. Koordinatni sustavi Lk i L0 povezani su matricom homogene transfor-
macije:
4.2. KINETI^KA ENERGIJA 49
b g LMMRv bqg OP , v
k
pk
T0k q = 0
T
T
1 = 0 0 0 , 1 k n . (4.4)
N 1 1 PQ
Obrnuta veza izme|u koordinatnih sustava Lk i L0 odre|ena je inverznom matricom
T0k, koja je opisana izrazom (2.14). Iz toga slijedi da se pri ra~unanju tenzora inercije Dk
potrebno koristiti inverznom matricom rotacije >R0k(q)@T, koja kutnu brzinu Z k definiranu
u odnosu prema L0 transformira u kutnu brzinu izra`enu u odnosu prema Lk, tj. >Z k@0
(R0k)T >Z k@k. Sada se kineti~ka energija ~lanka k u odnosu prema koordinatnom sustavu
Lk mo`e prikazati na sljede}i na~in:
Zk
T
Dk Zk
LMe Z j R OP DLMeR j Z OP
k T k k T k
e j =N Q N 0 k
Q. 0
(4.5)
2 2
Iz izraza (4.5) slijedi izraz za ra~unanje tenzora inercije Dk(q):
T
D k q = R 0k q D
bg bgk
k R0 q bg . (4.6)
MN z xzUdV
Vk
z yzUdV z d x y i UdV PPQ
Vk Vk
2 2
Da bi robot mogao obaviti zami{ljeni zadatak, potrebno je zadati niz to~aka u prostoru
kroz koje vrh alata manipulatora mora pro}i. U tom pogledu mogu}e je robotske sustave
podijeliti na:
1. sustave koji ostvaruju gibanje od to~ke do to~ke i sustave koji ostvaruju gibanje
kontinuirano po putanji;
2. sustave s upravljanjem u otvorenoj petlji i sustave s upravljanjem u zatvorenoj petlji;
3. sustave s razli~itom gra|om manipulatora (kartezijski, cilindri~ni, sferni i artikulirani).
Najprije je potrebno definirati dva osnovna pojma: putanju i trajektoriju gibanja.
a f paqf,
w1 q (5.1)
qn
T
w aq f e r aq f
2 S 3 ili af
w2 q M T \ , (5.2)
pri ~emu je q vektor varijabli zglobova.
Na takav na~in putanja alata mo`e se definirati kao krivulja u prostoru konfiguracije
alata R6. Ako se pri tom zadaju trenuci u kojima alat mora biti u odgovaraju}im to~kama
putanje, tada ta putanja postaje trajektorija.
72 5. PLANIRANJE TRAJEKTORIJE
Iz toga slijedi da je potrebno na}i funkciju koja }e opisati vezu izme|u to~aka na puta-
nji i zadanih trenutaka dolaska alata u te to~ke. To je mogu}e u~initi pomo}u funkcije ras-
podjele brzine s(t), ~ija derivacija s(t) predstavlja trenutnu brzinu vrha alata manipulatora
u vremenu. Dakle, zadavanjem funkcije raspodjele brzine zadaje se brzina gibanja alata po
`eljenoj krivulji.
Definicija trajektorije alata: Neka je * krivulja u prostoru konfiguracije alata R6 po
kojoj se vrh alata robota treba gibati te neka se sa s(t) ozna~i derivabilna funkcija raspo-
djele brzine, koja interval potreban za prijelaz putanje >0,T@ preslikava u interval >0, 1@, pri
~emu je zadovoljeno: s(0) 0 i s(T ) 1. Tada za trajektoriju alata vrijedi:
* nwa Of R : 0 d O d 1s
6
i af
O s t , 0 d t d T, (5.3)
Robot kao slo`eni mehanizam ostvaruje gibanje u prostoru zahvaljuju}i pogonima koji
se nalaze u njegovim zglobovima. Izbor tipa pogona ovisit }e o dinami~kim svojstvima
robota, tra`enoj to~nosti i o samoj gra|i odnosno konfiguraciji robota. Svaka os gibanja
robotskog manipulatora uklju~uje pogon koji pretvara elektri~ne upravlja~ke signale iz
ra~unala u mehani~ko gibanje. Gibanja osovina nadgledaju se i upravljaju pomo}u regu-
lacijskih petlji, u kojima se uspore|uju referentni signali sa signalima povratnih veza radi
detekcije pogre{aka gibanja. Signali pogre{aka obra|uju se u upravlja~kim algoritmima i
koriste za upravljanje gibanjima izvr{nih pogona. U op}em slu~aju, kao {to je prikazano
na slici 6.1., pogon zgloba robota sastoji se od slijednog regulatora (npr. polo`aja, brzine
vrtnje, momenta, sile dodira), poja~ala snage, izvr{nog elementa motora te mjernog
~lana. Mjerni ~lan mo`e biti kontinuiran (npr. potenciometar, tahogenerator) ili diskretan
(npr. apsolutni i inkrementalni dava~i impulsa).
Sila dodira mjeri se senzorom koji je montiran na mjestu korijena {ake. U re`imu slo-
bodnog gibanja po svim osima, mehanizam se upravlja po polo`aju, a u slu~aju dodira s
okolinom, upravlja se po sili dodira. Razmatrani mehanizam pogonjen je vektorski uprav-
ljanim, iz ~opera napajanim sinkronim motorom s permanentnim magnetima, ~ije su uprav-
lja~ke karakteristike sli~ne karakteristikama istosmjernog motora. Kao {to je prikazano na
slici 7.2., sustav upravljanja silom dodira sadr`i podre|enu petlju regulacije brzine vrtnje i
nadre|enu petlju neposrednog upravljanja po sili. Neposredno upravljanje silom dodira
podrazumijeva da se za upravljanje silom koristi samo mjereni signal dobiven iz senzora
sile, a ne i podatak o polo`aju, kao kod hibridnog upravljanja.
Blokovska shema lineariziranog modela regulacijske petlje brzine vrtnje prikazana je
na slici 7.3. Regulacijska petlja sadr`i PI regulator, koji je opisan sljede}om prijenosnom
funkcijom:
1 T1s
af
Grb s K R
T1s
. (7.1)
138 7. UPRAVLJANJE SILOM DODIRA MANIPULATORA
Sl. 7.3. Blokovska shema lineariziranog modela regulacijske petlje brzine vrtnje pogona sa
sinkronim motorom s permanentnim magnetima
a f aa ff
G zi s
Iq s
Us s
K zi e Tzi s
K zi
1 Tzi s
, (7.2)
proizvoda. Redoslijed zadataka mo`e biti strogo odre|en (npr. predmet se prvo tokari pa
tek onda bu{i) ili fleksibilan (npr. svejedno je da li se predmet prvo tokari ili bu{i).
Nakon {to je odre|en redoslijed zadataka, potrebno je odrediti koji je resurs zadu`en
za pojedini zadatak. Taj postupak naziva se pridjeljivanje resursa. Kao i pri odre|ivanju
redoslijeda zadataka, pridjeljivanje resursa mo`e biti ili strogo odre|eno ili fleksibilno, tj.
mo`e se strogo odrediti koji je resurs zadu`en za pojedinu operaciju ili je pak svejedno koji
}e resurs obaviti odre|eni zadatak. Shodno tomu, fleksibilni proizvodni sustavi mogu imati
raznovrsne oblike struktura kojima se posti`u zadani proizvodni ciljevi.
Sintezi upravlja~kih algoritama prethodi analiza sustava. Budu}i da je karakter fleksi-
bilnog proizvodnog sustava kao cjeline odre|en operacijama, resursima i njihovim odno-
som, takvi sustavi pripadaju klasi sustava koji se nazivaju sustavi s diskretnim doga|ajima
(SDD) ili sustavi vo|eni doga|ajima.
LMuOP
m MMvr PP , (9.1)
MNy PQ
gdje je u ulazni vektor, v vektor operacija, r vektor resursa i y izlazni vektor. Komponente
vektora u sadr`e broj predmeta koji ulaze u sustav na danom ulaznom mjestu. Vektor v
sadr`i sve operacije danog sustava, dok vektor r sadr`i sve resurse u sustavu. Pozitivna
komponenta vektora y upu}uje na broj predmeta koji su napustili sustav na danom izlaz-
nom mjestu. U slu~aju sustava s jednom proizvodnom linijom, vektor y postaje skalar.
Komponente vektora stanja mogu biti samo nenegativni cijeli brojevi.
Kako se iz pravila odre|uju matrice sustava? Budu}i da se nad matricama koje opisu-
ju FPS obavljaju logi~ke operacije, one kao elemente mogu imati samo 0 ili 1.
Prije je re~eno da elemente FPS-a ~ine i operacije kojih je cilj krajnji proizvod. Ako
je slijed tih operacija odre|en, tada se definira matrica slijeda operacija Fv. Matrica Fv ima
1 na mjestu (i, j) ako je zavr{etak operacije j uvjet da pravilo i bude ispunjeno (istinito).
Ina~e je to mjesto jednako 0. Ta matrica povezuje vektor pravila x s vektorom operacija v.
Da bi neka operacija bila obavljena, treba raspolagati resursom. Matrica koja opisuje
odnos operacija i resursa naziva se matrica zahtjeva za resursima i ozna~ava se sa Fr. Ma-
trica Fr ima 1 na mjestu (i, j) ako je raspolo`ivost resursa j uvjet da pravilo i bude ispunjeno.
Ina~e je to mjesto jednako 0. Ta matrica povezuje vektor pravila x s vektorom resursa r.
Matrica koja opisuje na koji na~in predmeti ulaze u FPS naziva se ulazna matrica Fu.
Matrica Fu ima 1 na mjestu (i, j) ako je raspolo`ivost predmeta na ulaznom mjestu j uvjet
da pravilo i bude ispunjeno. Ina~e je to mjesto jednako 0. Potrebno je napomenuti da u
slu~aju FPS-a s jednom proizvodnom linijom (jednim ulaznim mjestom) matrica Fu postaje
vektor. Matrica Fu povezuje vektor pravila x s ulaznim vektorom u.
Postavlja se pitanje o ~emu ovise dimenzije matrica Fv, Fr i Fu. Budu}i da uz svaku
operaciju mora biti vezano barem jedno pravilo i budu}i da se pretpostavlja da }e predmet
obrade u kona~nom vremenu napustiti fleksibilni proizvodni sustav, broj redaka matrica
jednak je broju operacija plus broj izlaznih mjesta sustava ({to predstavlja broj pravila).
Broj stupaca matrice Fv jednak je broju operacija, matrice Fr broju resursa, a matrice Fu
broju ulaznih mjesta.
Matricama Fv, Fr i Fu odre|en je samo uzro~ni dio pravila, odnosno one govore o tome
koje je uvjete potrebno ispuniti da bi neko pravilo bilo ispunjeno. Posljedi~ni dio pravila,
koji govori o tome koje operacije treba zapo~eti ako je neko pravilo ispunjeno, modelira se
drugom skupinom matrica.
Matrica Sv, koja se naziva matrica pokretanja operacija, govori koje }e operacije biti
zapo~ete ako je odre|eno pravilo ispunjeno. Tako }e se na mjestu (i, j) te matrice nalaziti
1 ako ispunjenje pravila j zapo~inje operaciju i. Ina~e }e biti 0. Matrica Sv povezuje vek-
tor operacija s vektorom pravila.