You are on page 1of 98

TALLINNA TEHNIKAÜLIKOOL

Elektriajamite ja jõuelektroonika instituut

Robotitehnika õppetool

Tõnu Lehtla

ROBOTITE JUHTIMINE

Tallinn
1994
Eessõna

Robotitehnikas rakendatakse paljude teadusharude uusimaid saavutusi. Robotiehitus kätkeb


tohutult probleeme, mille lahendamine stimuleerib teaduse arengut. Robotite panus tootmise
tehnoloogilisse uuendamisse pole alati vastavuses teaduse saavutustega selles valdkonnas.
Tavaliselt kulub aastaid, enne kui selgub paljude robotitehnikast alguse saanud teaduslike
ideede ning tehniliste lahenduste tõeline väärtus.

Käesolev raamat on robotite juhtimisele pühendatud sarja esimene osa. Selles käsitletakse
robotite juhtimise üldpõhimõtteid ning nende programmjuhtimise teoreetilisi aluseid. Sarja
teises osas vaadeldakse robotite juhtseadmete ehitust, tarkvara ja programmeerimist. Kolmas
osa on pühendatud robotite adaptiivjuhtimissüsteemidele.

Raamatu koostamisel oli suureks abiks professor Olav Aarna, kellele autor on
tänulik paljude nõuannete ning kasulike märkuste eest.

AUTOR

TÕNU LEHTLA

on sündinud 14. juunil 1947. 1970. aastal lõpetas Tallinna Polütehnilise


Instituudi elektriajamite ja tööstusseadmete automatiseerimise erialal.
Tehnikakandidaat 1976. aastast. Praegu töötab Tallinna Tehnika-ülikoolis
elektriajamite ja jõuelektroonika instituudi robotitehnika õppetooli
juhatajana, aseprofessor. On avaldanud elektriajamite, tööstusautomaatika
ja robotitehnika alal üle 50 teadusliku ja õppemetoodilise töö.

 Tõnu Lehtla, 1994

2
1. JUHTIMISSÜSTEEMIDE ÜLDISELOOMUSTUS

1.1. Juhtimise põhimõisteid

Juhtimine on infotöötlusprotsess, mis väljendub mingi tegevuse sihipärases korraldamises.


Juhitakse nii tehnilisi, bioloogilisi kui ka sotsiaalseid süsteeme. Tehnilistes süsteemides toimub
juhtimine kas inimese osavõtul või automaatselt. Eristatakse käsijuhtimist, automatiseeritud
ja automaatjuhtimist. Käsijuhtimise korral on kõik juhtimisfunktsioonid usaldatud inimesele.
Automatiseeritud juhtimisel on need jaotatud inimese ja automaatide vahel. Seejuures
täidavad automaadid funktsioone, mida inimene pole füüsiliselt võimeline täitma või mis
primitiivsuse ja üksluisuse tõttu pole inimesele vastuvõetavad. Võrreldes automaatidega on
inimese võimed piiratud, tema meeleorganite tundlikkus, täpsus ja vastuvõtu ulatus on väike
ning lihaste toimekiirus ebapiisav. Inimese eelised automaatide ees avalduvad aga keerukate
loogikaülesannete lahendamisel ning intuitsiooni näol. Juhul kui süsteem talitleb pikemat aega
ilma inimese sekkumiseta selle juhtimisse, on tegemist automaatjuhtimisega.

Mõiste automaat tuleneb kreeka sõnast automatos, mille eestikeelne tõlge on isetoimiv.
Tehnikas tähendab automaat seadet, masinat või seadmete ja masinate kogumit, mis võib
töötada iseseisvalt inimese vahetu osavõtuta tööprotsessist. Juhtimise seisukohalt on isetoimiv
masin või masinate kogum automaatjuhtimissüsteem, mida võib tinglikult jagada
juhtimisobjektiks ja juhtseadmeks (joon. 1.1).

Häiringud

Juhtimisobjekt

Juhttoimed Väljundid

Juhtseade

Juhtimise eesmärk

Joonis 1.1. Juhtimissüsteemi üldine struktuur

3
Juhtimissüsteemis kulgevad mitmesugused infovood, mille suunad on joonisel 1.1 näidatud
nooltega. Juhtimisobjekti tööd iseloomustavad väljundid, mida on alati võimalik mõõta.
Objekti käitumist mõjutavad häiringud ning juhtseadme poolt antavad juhttoimed.
Juhttoimed moodustatakse sõltuvalt juhtimise eesmärgist ning objekti väljunditest. Kui
objekti väljundeid kasutatakse selleks, et mõjutada objekti enda käitumist, siis toimib
süsteemis tagasiside. Kõiki süsteeme liigitatakse sõltuvalt tagasiside olemasolust avatud ja
suletud süsteemideks. Avatud süsteemide hulka loetakse suhteliselt lihtsad süsteemid, kus
tagasisideahelad puuduvad, s. t. väljundid ei mõjuta juhtseadme tööd. Suletud süsteemides
kontrollitakse tagasiside abil objekti väljundeid ning korrigeeritakse kontrolli tulemuste järgi
süsteemi edasist tööd. Nüüdisaegsetes robotites kasutatavad juhtimispõhimõtted võib liigitada
kolme suurde rühma.

1. Klassikalised juhtimismeetodid põhinevad tagasisidel ning vea järgi juhtimisel. Neid on


eriti sobiv rakendada lihtsate ühe sisendi ja väljundiga süsteemide korral. Enamikul juhtudel
on need süsteemid tööpunkti ümber lineariseeritavad, s. t. neid saab kirjeldada lineaarsete
diferentsiaalvõrranditega. Nende korral on hõlpus rakendada ka Laplace'i teisendust ning
kasutada süsteemi analüüsiks ja sünteesiks sageduslikke meetodeid. Süsteemide
juhtimiseks kasutatakse klassikalisi, PID- jt. regulaatoreid.

2. Moodsad juhtimismeetodid põhinevad süsteemi olekuruumil ja olekumuutujatel. Neid


meetodeid rakendatakse, kui tegemist on keerukate mitme sisendi ja väljundiga
mitmelisidusate mittelineaarsete süsteemidega. Olekumuutujate määramiseks kasutatakse
juhtimisobjekti mudeleid, mis võimaldavad süsteemide optimaalset ning adaptiivjuhtimist.
Olekumuutujatel põhinevate süsteemide analüüsiks ja sünteesiks kasutatakse peamiselt
ajafunktsioone, s.o. siirdeprotsessidel põhinevaid meetodeid. Sellega on seletatav ka tõsiasi,
et keerukate süsteemide juhtimiseks rakendatakse põhiliselt digitaalarvuteid, mis töötavad nii-
öelda ajaskaalal. Olekumuutujatel põhinevat automaatjuhtimisteooriat nimetatakse ka
moodsaks juhtimisteooriaks.

3. Intellektuaalsed juhtimismeetodid põhinevad hägusloogikal ja eksperthinnangutel. Neid


meetodeid rakendatakse iseseisvalt või täiendava abinõuna juhul, kui on tegemist
juhtimisobjekti või tema töökeskkonna olulise määramatusega. Süüsteemi muutujatele
antakse kvantitatiivsete väärtuste asemel kvalitatiivsed hinnangud (näiteks suur, keskmine,
väike vms.) ning tema sisendid ja väljundid seotakse KUI-SIIS-(IF-THEN-) lausetega.
Süsteemi analüüsiks ja sünteesiks kasutatakse eksperthinnangutel põhinevaid meetodeid,
juhtimiseks aga hägusloogika kontrollereid. Juhtimisseadme loomine taandub sel juhul
peamiselt vastava otsustamisloogika sünteesile. Robotite juhtimisel rakendatakse kõiki kolme
põhimõtet.

Juhtimisobjektil on alati teatud struktuur. Tehnilisi ja tehnoloogilisi juhtimisobjekte võib


vaadelda koosnevana juhitavast protsessist ja mõõteseadmest (joon. 1.2). Protsessi juhtimise
all mõistetakse ka mingi täiturseadme, näiteks roboti manipulaatori, laotõstuki või tööpingi
supordi talitluse juhtimist. Mõõteseade annab juhtimisobjekti töö kohta infot. Protsessi kulgu
ja mõõteseadme tööd mõjutavad häiringud, mida nimetatakse vastavalt protsessi- ja
mõõtehäiringuteks või protsessi- ja mõõtemüraks.

4
5
Iga juhitavat protsessi või seadet iseloomustab antud hetkel tema olek. Tehnilise
juhtimisobjekti olekut kirjeldavad paljud ajas muutuvad suurused. Nende muutujate väärtuste
lõplikku hulka ehk n-mõõtmelist reaalarvuliste komponentidega vektorit nimetatakse objekti
pidevaks olekuks. Roboti manipulaatori olekut kirjeldavad kõigi tema lülide kiirusvektorid ja
asendid.

Protsessimüra Häiringud Mõõtemüra

Juhitav Olekud X
protsess Mõõte-
või seade seade

Juht- Juhtimisobjekt Väljundid


toimed
U Y
Olekute
Juhttoimete Oleku
moodustaja hinnangud hindaja

Juhtseade

Juhtimise eesmärk

Joonis 1.2. Tehnilise juhtimissüsteemi struktuur

Mõnikord võib manipulaatori pidevliikumise kirjeldamisest ka loobuda, näiteks kui tuleb


juhtida järjestikuseid diskreetseid tehnoloogiaoperatsioone A, B, ... , H. Operatsioonide
soovitud järjekorra saavutamiseks peab teadma, millist operatsiooni täidab robot antud hetkel
ning millist operatsiooni tuleb täita järgmisel hetkel. Sel juhul on otstarbekas kirjeldada roboti
tööd lõpliku arvu diskreetsete olekute abil, mille näiteks on järgmised olekud: 1) robot on
välja lülitatud, 2) robot on rikkis, 3) robot täidab operatsiooni A, 4) robot täidab operatsiooni B
jne. Kõik diskreetsed olekud erinevad üksteisest kvalitatiivselt.

Juhtimisobjekti olekuid kirjeldatakse n-mõõtmelises olekuruumis. Pidevale olekule vastab


olekuruumis kujutispunkt. Kahemõõtmelise olekuruumi korral on tegemist olekutasandiga,
mida saab hõlpsasti joonisel kujutada (joon. 1.3). Objekti olekut määravad vaid kaks muutujat
x1 ja x2. Sõltuvalt muutujate väärtusest võib objekti kujutispunkt sattuda tasapinna eri piir-
kondadesse, millele vastavad objekti erinevad diskreetsed olekud.

Tehnilise objekti juhtimisülesande saab formuleerida, lähtudes oleku mõistest, järgmiselt.


Juhtimise ülesandeks on vastavalt juhtimise eesmärgile viia objekti kujutispunkt olekuruumi
mingist algpunktist A punkti B, kusjuures liikumisel ühest punktist teise tuleb täita teatud
kvaliteedinõudeid.

6
Näiteks tuleb liikuda lühimat teed pidi, minimaalse energiakuluga või võimalikult väikese
ajavahemiku jooksul. Oluliseks üldistuseks on, et roboti korral ei tähenda liikumine
olekuruumis mitte ainult manipulaatori lülide asendi geomeetrilist muutumist, vaid kõigi roboti
olekut kirjeldavate suuruste muutumist. Tervikuna iseloomustavad roboti tööd nii
kujutispunkti pidev liikumine olekuruumis kui ka tema diskreetsete olekute vaheldumine.

x
2
Täidab
operatsiooni
B

Täidab
Täidab
operatsiooni
operatsiooni
AA

On välja
lülitatud On rikkis

0 x
1
Joonis 1.3. Olekutasand

Juhtimisülesanne lahendatakse kahes järgus. Kõigepealt kavandatakse sobiv liikumistee


olekuruumi punktist A punkti B, seejärel püütakse kavandatu võimalikult täpselt realiseerida.
Kujutispunkti kavandatud liikumisteed nimetatakse juhtimisteoorias soovitud
olekutrajektooriks. Juhtimisobjekti oleku tegelikku muutumist nimetatakse aga tegelikuks
olekutrajektooriks. Soovitud olekutrajektoori kavandamist võib tinglikult nimetada
strateegiliseks, liikumise tegelikku realiseerimist aga taktikaliseks juhtimisülesandeks.
Juhtimisel tuleb tagada tegeliku ja soovitud olekutrajektoori võimalikult väike lahknevus,
piirjuhtumil isegi kokkulangevus. Seetõttu võib tihti väita, et süsteemi parameetrid muutuvad
piiratud ulatuses, mis lubab aga rakendada mittelineaarsete süsteemide lineariseerimist.

Juhtimisülesande lahendamist käsitletakse automaatjuhtimise nüüdisteoorias objekti


kujutispunkti juhtimisena olekuruumis. Levinud on ka varasem käsitlus, kus juhitavate
suurustena vaadeldakse objekti väljundeid. Nende käsitluste erinevus seisneb selles, et objekti
väljundid ei iseloomusta küllaldaselt objekti käitumist, eriti kui objekti järgmised olekud
sõltuvad eelmistest olekutest. Ehk piltlikult öeldes - kui objekti tulevik sõltub tema minevikust.
Niisuguse nähtusega on tegemist kõigi inertsiaalsete ehk dünaamiliste süsteemide korral.
Seepärast võib inertsi vaadelda ka juhtimisobjekti sisemise mäluna, milles peegeldub objekti
minevik. Oleku järgi juhtides saab ära kasutada suuremat hulka infot kui väljundite järgi
juhtimisel. Ühtlasi kõrvaldab see väljundite näiliselt mitteühese sõltuvuse objekti sisenditest,
nõnda et kaob vajadus säilitada juhtseadmes objekti käitumise eellugu ehk minevikku.

7
Kujutispunkti juhtimine olekuruumis on aktuaalne kõigi keerukate süsteemide korral, mis on
mitmemõõtmelised, mitmelisidusad ja stohhastilised.

Mitmemõõtmelises süsteemis on palju sisendeid ja väljundeid. Mitmelisidusates


süsteemides mõjutab iga sisend mitut väljundit. Süsteemide stohhastilisus tähendab, et
häiringute tõttu pole juhttoimed, olekud ja väljundid teistsugustes keskkonnatingimustes
reprodutseeritavad.

Juhtimissüsteemi struktuur, mis vastab kujutispunkti juhtimisele olekuruumis, on joonisel 1.2.


Juhtseadme ülesandeks on hinnata objekti olekuid ning moodustada vajalikke juhttoimeid.
Seejuures kasutatakse objekti olekute hindamiseks infot nii väljundite kui sisendite kohta.

Lihtsad süsteemid on enamasti ühemõõtmelised, s. t. ühe sisendi ja ühe väljundiga. Sel juhul
on juhtimisobjekti oleku ja väljundi vaheline sõltuvus määratav suhteliselt lihtsa funktsiooniga
ning niisuguseid süsteeme saab edukalt juhtida ka väljundite järgi (joon. 1.4). Juhtimise
eesmärk on väljundi automaatne stabiliseerimine, muutmine etteantud seaduspärasuse järgi
või muutmine tundmatu (määramatu, juhusliku) seaduspärasuse järgi. Vastavaid süsteeme
nimetatakse stabiliseerimis-, reguleerimis- või järgivsüsteemideks.

Häiringud

Seade- Juhttoime Juhtimis- Väljund


Regulaator
suurus objekt

Reguleerimisviga Tagasiside

Joonis 1.4. Lihtsa juhtimissüsteemi struktuur

Loetletud süsteeme juhtitakse kahel põhimõttel. Esimesel juhul moodustatakse juhttoime


sõltuvalt reguleerimisveast. Kuna juhttoime moodustamiseks kasutatakse tagasisidet, siis on
tegemist juhtimisega tagasiside põhimõttel. Teisel juhul moodustatakse juhttoime häiringute
kompenseerimise põhimõttel. Enamasti kasutatakse mõlemat moodust kombineeritult.
Juhttoime on sel juhul nii reguleerimisvea kui ka häiringu funktsioon. Juhttoime
moodustamise seadet nimetatakse regulaatoriks. Häiringute kompenseerimise põhimõtet
võib tagasiside põhimõttest eristada vaid teatud lihtsustuse korral, sest üldjuhul on
mõõdetavad häiringud vaadeldavad samuti juhtimisobjekti väljunditena, nende kasutamine
juhtimiseks aga tagasisidena.

8
Pideva või diskreetse programmi järgi töötavat automaatregulaatorit nimetatakse
programmregulaatoriks. Programmregulaator koosneb programm- ehk etteandeseadmest ja
regulaatorist. Programmseade salvestab, säilitab ning taasesitab programmi. Eri seadmetes
kasutatakse selleks mehaanilisi, magnetilisi, elektrilisi ja optilisi andmekandjaid. Regulaator
võrdleb objekti programmikohast olekut tegelikuga ning moodustab juhttoimed. Kui objekti
töörežiimi (olekut) juhitakse varem koostatud eeskirja (programmi) järgi, siis on tegu
programmjuhtimisega.

Hägusloogilisele juhtimisteooriale pani aluse Iraagi päritolu USA California Ülikooli


professor Lofti A. Zadeh 1960. aastatel. Vajaduse seda liiki juhtimise järele põhjustas asjaolu,
et vaid väga vähesed reaalsete protsesside olekumuutujad on kirjeldatavad binaarloogika
kategooriates, s.o. kahe väärtusega - 0-väär ja 1-tõene. Inimese mõtlemises etendavad suurt
osa paljud täpselt määratlemata hinnangud, nagu pikk, kõrge, madal, külm, leige, soe, palav,
kuum jne. Binaarloogikas tuleks täpselt määratleda need temperatuurid, mil tuba lugeda
külmaks, normaalseks või palavaks. Olgu normaalne temperatuur vahemikus 16 ... 24 °C.
Hägusloogiline hinnang määrab normaalse temperatuuri mingi tõenäosusliku funktsiooni oma
matemaatilise ootusega 20 °C ning teatud hajuvusega ehk dispersiooniga (joon.1.5).
Matemaatilisele ootusele vastab nn. hägune ühikpunkt (fuzzi singlton). Vastavat
tõenäosuslikku funktsiooni nimetatakse kuuluvusfunktsiooniks. Kuuluvusfunktsiooni
(membership function) punkte väärtusega 0,5 nimetatakse ristumispunktideks (crossover
point), kuna seal on kahe kõrvuti asuva funktsiooni tõenäosusväärtused võrdsed, ning
sisendsuuruse muutumisel toimub tõenäosuslik üleminek ühelt funktsioonilt teisele. Muutuja
väärtuste hulka, mille korral kuuluvusfunktsioon on määratud, nimetatakse selle funktsiooni
toeks e. kandjaks (support).

Normaaljaotusele ehk Gaussi jaotusele vastava tõenäosusfunktsiooni võib hägusloogilise


juhtimise korral sageli asendada mõne lihtsamaga, näiteks kolmnurkse või
trapetsfunktsiooniga. Hägusloogilise juhtimise kvaliteet sõltub suurel määral sisendmuutuja
skaala märgistamisest e. gradueerimisest (scale mapping), s.t. sellest, milliste hägusloogiliste
väärtuste ning tõenäosusfunktsioonidega iseloomustatakse teatud reaalseid kvantitatiivseid
väärtusi omavaid suurusi. Seejuures gradueeritakse kogu skaala ühtlaselt ehk lineaarselt või
vastavalt süsteemi looja hinnangule mittelineaarselt. Hägusloogiline juhtimine toimub
hägusloogika kontrolleriga (joon.1.6).

Kontroller täidab süsteemis põhiliselt kolme ülesannet: 1) sisendsuuruste gradueerimine


(kvantimine ja normaliseerimine) ning hägustamine (fuzzification); 2) loogiliste otsuste
tegemine ehk otsustamisloogika (desisionmaking logic); 3) väljundsignaali märgistamine ja
selge ehk kvantitatiivse juhttoime moodustamine (defuzzification). Nende kolme ülesande
lahendamine põhineb a) süsteemi looja ehk eksperdi kogemustel ja teadmistel; b) tema
intuitiivsel tegevusel; c) juhtimisobjekti hägusal mudelil ning d) süsteemi iseõppimisel, s.o.
meta- ehk ülireeglitel, mille põhjal süsteem oma otsuseid korrigeerib.

Kõik need teadmised on andmete ja reeglite näol koondatud kontrolleri teabebaasi (knowledge
base), mis jaguneb omakorda andmebaasiks (data base) ja reeglite baasiks (rule base).
Hägusloogika kontroller võib olla süsteemis ainus juhtseade (joon.1.6) või töötada ka
paralleelselt hariliku PI-regulaatoriga (joon.1.7), aidates parandada süsteemi töö kvaliteeti.

9
a) b)
u u

1 1

0,5

16 24 20
c)
u
NB NM NS Z PS PM PB

-30 -20 -10 0 10 20 30

Joonis. 1.5. Sisendmuutuja skaala märgistamine:


binaarloogika (a) ja hägusloogika (b) kuuluvusfunktsioon ning lineaarne märgistamine (c)

Juhtimisobjekt Olekute hindaja

Hägusloogika
kontroller Otsustus-
loogika

Selgiti Hägusti

Teabebaas

Joonis 1.6. Hägusloogilise juhtimisega süsteemi kontroller

10
e Hägus-
. loogika
e
kontroller
u Juhtimis- x
d/dt objekt

w PI-
regulaator
x

Joonis 1.7. Hägusloogika kontrolleri töö koos tavalise PI-regulaatoriga

PI-regulaator reageerib süsteemi veale e = w - x, hägusloogika kontrolleri juhttoime


moodustatakse aga sõltuvalt veast e ja vea tuletisest e', mida illustreerib joonis 1.8. Sellel on
näidatud vea siirdeprotsessi e = f(t) vastavus vea faasitrajektoorile tasandil e - e'. Sõltuvalt
sellest kus asub süsteemi faasipunkt ning kuidas muutub viga siirdeprotsessi käigus, saab
formuleerida teatud IF-THEN-(KUI-SIIS-)reeglid (fuzzy rules), mis määravad kontrolleri
juhttoime. Vea suurusele võib anda 5 hinnangut: suur positiivne (PB - positive big), keskmine
positiivne (PM), väike positiivne (PS), null (ZE), väike negatiivne (NS), keskmine negatiivne
(NM) ja suur negatiivne (NB). Analoogiliselt hinnatakse ka vea tuletisi. Vastavalt sellele võib
sõnastada näiteks järgmised juhttoime moodustamise reeglid:

IF e = NB AND e' = NB THEN u = NB


IF e = ZE AND e' = NM THEN u = NS
IF e = PS AND e' = PM THEN u = PM
jne.

.
e e
1
4
5

2 6 5 1
4 t 3 7 e
7 6

2
3

11
Joonis 1.8. Süsteemi vea siirdeprotsess ja faasitrajektoor

12
Kokku on kahe muutuja seitsme erineva hinnangu korral võimalik moodustada 49 reeglit (7 x
7 = 49). Igale juhttoimele omistatakse arvväärtused. Hägusloogika reeglid saab esitada ka
tabeli kujul.

Hägusloogika reeglid

Vea tuletis e'


Viga e NB NM NS ZE PS PM PB
NB NB NB NM NM NS NS ZE
NM NB NM NM NS NS ZE ZE
NS NM NM NS NS ZE ZE ZE
ZE NM NS ZE ZE ZE PS PM
PS ZE ZE ZE PS PS PM PM
PM ZE ZE PS PS PM PM PB
PB ZE PS PS PM PM PB PB

Kui mitu reeglit toimivad üheaegselt, saadakse väljundsuurused hägusmuutujate


mitmesuguste selgitusstrateegiate abil. Nendeks võivad olla maksimumikriteerium, keskmise
maksimumi või raskuskeskme meetod. Suhteliselt häid tulemusi andva raskuskeskme meetodi
korral leitakse summaarne juhttoime valemiga:

N N
JT = ∑ (un × U n ) / ∑ un ,
n=1 n=1

kus un - kuuluvusfunktsioon,
Un - kuuluvusfunktsiooni hägune väljundsuurus,
N - korraga toimivate kuuluvusfunktsioonide arv.

Hägusloogilisel juhtimisel on võrreldes teiste juhtimismoodustega rida eeliseid.


1. Kontrolleri sünteesiks pole vaja põhjalikult tunda automaatjuhtimise põhimõtteid, peab vaid
teadma juhtimisobjekti käitumist. Nii võib iga tehnikavaldkonna asjatundja ilma
automaatikaspetsialisti abita luua eeskujuliku juhtimissüsteemi. 2. Hägusloogilise kontrolleriga
on lihtne juhtida mitmemõõtmelisi ja mitmelisidusaid süsteeme. 3. Hägus-loogilise juhtimise
saab välja arendada järk-järgult otsustamisreegleid lisades ja täiustades. 4. Hägusloogiline
juhtimispõhimõte suurendab oluliselt diskreetsete süsteemide toime-kiirust, sest arvutuste
hulk ning selleks kuluv aeg on viidud minimaalseks. 5. Hägusloogika kontroller on suhteliselt
odav, lihtne ning töökindel. Isegi väikese arvu reeglite korral on kontroller efektiivne.

Automaatjuhtimissüsteemi loomist alustatakse juhtimisobjekti määratlemisest, mis tähendab


tema eraldamist ümbritsevast keskkonnast. Sageli tehakse seda vaid mõtteliselt, sest reaalne
juhtimisobjekt puudub, näiteks on alles projekteerimisjärgus. Objekti määratlemisel tehakse
kindlaks tema sisendid ja väljundid. Juhtimisobjektist täpsema ettekujutuse saamiseks koos-
tatakse matemaatiline mudel. Üldjuhul mõistetakse objekti mudeli all objekti talitluse
formaliseeritud kirjeldust või talitlust imiteerivat tehisobjekti. Mudeli loomist nimetatakse
modelleerimiseks.

13
Mudeli järgi saab hinnata objekti tegelikku olekut ning prognoosida järgnevaid olekuid.
Modelleerimise täpsus sõltub objekti keerukusest. Paljud juhtimisobjektid pole piisava
täpsusega modelleeritavad. Alati ei saa täpselt hinnata ka kõiki objekti olekuid iseloomustavaid
suurusi. Näiteks mõõdetakse üht osa neist anduritega, teisi määratakse objekti mudelist
kaudsete arvutuste teel, kolmandatele antakse üksnes ligikaudne hinnang. On olemas objekte,
mille tööd iseloomustatakse vaid ligikaudsete mudelitega, või ka objekte, millest puuduliku
informatsiooni tõttu polegi võimalik luua mõistlikku mudelit. Sel juhul on tegu
määramatusega, mis oluliselt raskendab juhtimist, kuigi on teatud viisil matemaatiliselt
kirjeldatav. Mida suurem on juhtimisobjekti struktuuri ja parameetrite määramatus ning
keskkonnahäiringute kontrollimatu muutumise ulatus, seda raskem on objekti juhtida.
Täielikult determineerituiks loetakse objekte, mida saab täpselt modelleerida ning millele ei
mõju juhuslikud häiringud. Selliseid objekte saab põhimõtteliselt juhtida ka ilma tagasisideta,
s. o. avatud süsteemis. Kahjuks leidub reaalsete objektide hulgas determineeritud objekte
väga harva. Enamasti on juhtimissüsteemid suletud. Igasugune määramatus kompenseeritakse
andurite informatsiooniga. Juhtimise eesmärgi saavutamine sõltub selle informatsiooni
tõepärasusest ning informatsiooni kasutamise oskusest või juhtseadme intellektuaalsest
tasemest.

14
1.2. Robot kui automaatjuhtimisobjekt

Nüüdistootmises on tähtsal kohal robotid ja robotsüsteemid. Automaattööpinkide, -trans-


pordiseadmete ja -ladude kõrval on need automaattootmise põhilisteks komponentideks.
Tootmise paindlikkuse seisukohalt eristatakse raskesti ümberkorraldatavat jäika
automaattootmist ja paindtootmist, mida saab kiiresti kohandada muutuvate tootmis-
tingimustega ning lihtsalt ümber seadistada uute toodete valmistamiseks. Esimene põhineb
funktsionaalselt jäikadel (üheotstarbelistel) vooluliinidel, mis sobivad eelkõige
hulgitootmiseks. Paindtootmise aluseks on universaalsed, mitmeotstarbelised seadmed ja
masinad. Niisuguste masinate hulka kuuluvad ka robotid.

Robot on automaatne paikne või liikuv, mitme liikuvusastmega manipulaatorist ja


ümberprogrammeeritavast juhtseadmest koosnev masin, mis on ette nähtud tootmisprotsessis
vajalike liikumis- ja juhtimisfunktsioonide täitmiseks. Robotite juhtimine tähendab väga
paljude tehniliste ja organisatsiooniliste ülesannete lahendamist, mille lõppeesmärgiks on
roboti rakendamine seal, kus inimtöö on raskendatud või vähetõhus. Robotite ja
robotsüsteemide juhtimise täiustamine on kujunenud automaatika üheks peamiseks
arengusuunaks.

Roboti juhtimssüsteemi funktsionaalskeem on joonisel 1.9. Liikumisfunktsiooni täidab üks või


mitu manipulaatorit ning liikurroboti korral ka veok. Üldjuhul võib neid kõiki nimetada roboti
täiturseadmeteks. Täiturseadme mootoreid käitatakse energiaga, mida saadakse ajamite
toiteplokist. Roboti kui automaatjuhtimisobjekti väljunditeks on signaalid, mis saadakse
manipulaatorile paigutatud anduritelt, ning signaalid, mis saadakse roboti töötsoonis olevatelt
anduritelt ja robotiga koos töötavatelt seadmetelt. Mõlemat liiki signaale kasutatakse
tagasisideks. Manipulaatorilt saabuvate signaalide korral on tegemist sisemise, töötsoonist
saabuvate signaalide korral aga välise tagasisidega. Manipulaatori olekut iseloomustavateks
põhisuurusteks on lülide liikumisparameetrid: asend, kiirus, kiirendus ja haaratsi sõrmede
asend. Töötsooni olekut iseloomustab teisaldatavate või töödeldavate esemete asukoht ja
suunistus ehk orienteeritus ning manipulaatori liikumisteel esinevad takistused. Tuleb
arvestada, et töötsooni üksikasjalikult kirjeldada on väga keerukas ning infomahukas. Alati ei
leidu töötsooni olekute määramiseks sobivaid andureid ning töötsooni mudel ei võimalda neid
täpselt hinnata. Puuduliku informatsiooni tõttu tekib määramatus, mis raskendab roboti
juhtimist. Lihtsamatel juhtudel võib roboti kui automaatjuhtimisobjekti määratlemisel
töötsooni mitte arvestada ning piirduda üksnes manipulaatori olekute hindamisega. Piltlikult
öeldes on sel juhul tegemist pimeda ja kurdi robotiga, kes ei tea, mis tema ümber toimub.

15
Side Operaator Energia
teiste
juhtsead-
metega Juhitav energia
Ajamite
Juhtseade
toiteplokk

Videokaamera
Mõõte- ja
liiteseade

Töötsoon

Tehnoloogia-
seadmed Täiturseade

Ümbritsev keskkond

Joonis 1.9. Roboti juhtimissüsteemi üldine funktsionaalskeem

Töötsoonist saabuv informatsioon annab robotile ümbrusetaju. Kõige tõhusamaks vahendiks


sellise informatsiooni hankimisel on raalnägemine. Selleks kasutatakse videokaamerat, mille
signaalid edastatakse juhtseadmesse, kus toimub kujundite tuvastamine, s. t. vastuvõetud
kujutiste dekodeerimine ja filtreerimine ehk olulise informatsiooni eraldamine mitteolulisest
ning selle muutmine robotile arusaadavaks. Keerukuse ja kalli hinna tõttu pole masinnägemine
veel laialt levinud, kuid selle täiustamine on robotitehnika üheks põhiülesandeks. Lihtsamatel
juhtudel kasutatakse ümbrusetajuks mitmesuguseid puute- ja lähedusandureid ning
lokatsiooniseadmeid.

Mõõte- ja liiteseadmed on anduritelt saabuvate signaalide muundamiseks ja edastamiseks, s.


t. täidavad kontrollifunktsiooni. Nende kaudu jõuab manipulaatorilt, roboti töötsoonist ja
tehnoloogiaseadmetelt (juhtimisobjekti väljunditelt) informatsioon juhtseadmesse.

Juhtseadme ülesandeks on täita kõiki roboti juhtimisfunktsioone. Ta peab sidet


automaattootmises rakendatud teiste juhtseadmetega, võtab operaatorilt vastu käske ning
väljastab juhttoimeid. Ta tagab varem salvestatud või seadme koostatud (iseprogrammeeritud)
programmi täitmise ning programmi operatiivse salvestamise. Programm salvestatakse
õpetamise või analüütilise programmeerimise teel.

16
Juhttoimed on tavaliselt elektrilised pidev- või arvsignaalid, mis määravad ajamite
toitemuundurite väljastatavad energianivood. Roboti juhtimissüsteemi väljundid on
manipulaatori lülide asendi- ja kiirussignaalid, s. o. siseandurite signaalid, ning roboti
töökeskkonda ja tehnoloogiaseadmete tööd iseloomustavad välisandurite signaalid.
Juhtimissüsteemi häiringud on ajamite toitepinge või rõhu muutumine, teisaldatavate
esemete põhjustatud koormusjõud, robotsüsteemi transpordiseadmete töö ebatäpsus jms.
Seadesuurused on operaatori või teiste juhtseadmete poolt robotile antavad käsud. Põhiline
osa käskudest on salvestatud programmina juhtseadme mällu. Teise osa moodustavad käsud,
millega operaator või juhtarvuti sekkuvad operatiivselt roboti töösse.

Üldjuhul töötab robot automaatselt, s. t. inimese sekkumiseta tööprotsessi. Operaatori


ülesanne on roboti tööks ettevalmistamine, s.t. roboti töökoha tehnoloogilist organiseerimist
ning tema töö programmeerimist. Roboti tööprogramm koostatakse vastavalt tootmisprotsessi
tehnoloogilisele algoritmile, mis määrab üksikute tööoperatsioonide sisu ja järjekorra.
Osaliselt võib robot programmeerida end ka automaatselt.

Tööprogramm kantakse analoog- või digitaalkujul andmekandjale, kust programmseade seda


automaatselt loeb ning juhtsignaalideks muundab. Roboti programmeerimine tähendab
tööprogrammi koostamist ja salvestamist juhtseadme andmekandjale (mällu). Roboti
tööprotsessi programmi järgi juhtimist nimetatakse roboti programmjuhtimiseks.

Juhtimise ja roboti programmeerimise seisukohalt on oluline, mil määral tööprotsessid on


formaliseeritavad. Determineeritud juhtimisobjekti korral saab kõiki töö käigus tekkivaid
olukordi täpselt ette näha ja leida neile vastav juhtimise algoritm. Paljudel juhtudel peab aga
robot uue olukorraga kohanema töö käigus. Seejuures võib määramatuse aste olla erinev. Ühel
juhul piisab roboti tööprogrammi ümberhäälestamisest vastavalt muutunud oludele, teisel
juhul valitakse uus, senikogematu tegutsemisviis.

Tuntakse robotite kolme põlvkonda, mida eristatakse sõltuvalt sellest, kui täpselt on roboti töö
formaliseeritav ning millise määramatuse korral on robot suuteline oma ülesandeid täitma.

Esimesse põlvkonda kuuluvad suhteliselt lihtsad robotid, mis talitlevad edukalt vaid täpselt
määratletud (determineeritud) tingimustes. Kuna mällu salvestatud programmi töötamise ajal
ei muudeta, siis on tegu jäiga programmjuhtimisega robotitega. Neil puudub ümbrusetaju ja
järelikult pole ka väliseid tagasisideahelaid. Manipulaatori liikumist ruumis juhitakse üksnes
sisemistelt asendi- ja kiiruseanduritelt saadud signaalide järgi. Esimese põlvkonna robotid
suudavad haarata esemeid, mille asend ja paigutus ruumis on roboti suhtes täpselt fikseeritud.
Seetõttu kasutatakse robotsüsteemis tehnoloogilisi abivahendeid, näiteks orienteeritakse
töödeldavad detailid eelnevalt ruumiliselt või paigutatakse need fikseeritud pesadega
kassettidesse. Nii suureneb oluliselt robotsüsteemi hind ning väheneb töö paindlikkus.
Kokkuvõtteks võib öelda, et esimese põlvkonna robotite juhtseadmete ülesandeks on
realiseerida jäigalt etteantud programm.

17
Teise põlvkonda kuuluvad ümbrusetajuga robotid, mis kohastuvad keskkonnas toimuvate
muutustega. Ümbrusetajuks vajaliku välise informatsiooni allikateks on mitmesugused puute-,
lähedus- ja lokatsiooniandurid ning masinnägemine. Teise põlvkonna robotite juhtimise
algoritm sõltub konkreetsest olukorrast töötsoonis. Eri olukorrad nõuavad robotilt erilaadset
tegutsemist. Seepärast peab teise põlvkonna robotite juhtseade lisaks juhtalgoritmi
realiseerimisele vajaduse korral ka algoritmi ümber häälestama. Roboti tööd juhib kõrgema
tasandi programm, mis sõltuvalt olukorrast muudab roboti tööprogrammi. See tähendab, et
keerukuse tõttu on otstarbekas jaotada juhtimisfunktsioonid eri tasandite vahel ning kasutada
hierarhilist juhtimist.

Kolmandasse põlvkonda kuuluvad intellektuaalsed robotid, milles on rakendatud


mitmesuguseid tehisintellekti elemente. Intellektuaalsel juhtimisel on selge hierarhiline
struktuur. Põhilised juhtimistasandid on kõige madalamast alates järgmised:
1) juhtimisalgoritmi realiseerimine,
2) juhtimisalgoritmi isehäälestamine,
3) liikumise planeerimine ja iseprogrammeerimine,
4) roboti ja töökeskkonna isemodelleerimine,
5) ümbruse tuvastamine ja mõistete iseõppimine ning
6) käitumise sihipärane iseorganiseerimine.

Iga järgmise tasandi algoritm juhib eelmise tasandi tööd, laiendades juhtseadme
funktsionaalseid võimalusi ning parandades juhtimise kvaliteeti. Seega täidab kolmanda
põlvkonna roboti juhtseade ka neid ülesandeid, mis esimese ja teise põlvkonna robotite korral
on inimese täita.

Nüüdistootmises kasutatakse valdavalt esimese põlvkonna jäiga programmjuhtimisega


roboteid. Alles viimastel aastatel on tööstus hakanud juurutama ja kasutama ümbrusetajuga
adaptiivroboteid. Tehisintellektiga robotid on seni veel laboratoorsete uuringute tasemel.
Käesolevas raamatus käsitletakse valdavalt jäiga programmjuhtimisega esimese põlvkonna
roboteid.

18
1.3. Robotite matemaatilised mudelid ja juhtimisülesanded

Juhtimisülesande püstitamisel on vaja määratleda neli komponenti:


1) juhtimisobjekt, 2) juhtimise eesmärk või eesmärgid, 3) lubatud juhttoimed ja 4) juhtimise
kvaliteedi mõõt. Juhtimisteoorias kirjeldatakse neid komponente matemaatiliste mudelitega.
Seepärast on igasugune juhtimisülesanne eelkõige matemaatiline ülesanne, mida lahendatakse
matemaatiliste meetoditega.

Kõik reaalsed juhtimisobjektid, nende hulgas ka robotid, kuuluvad nn. järelmõjuga


süsteemide ehk dünaamiliste süsteemide hulka, mis tähendab, et sõltuvalt "eelloost" reageerib
objekt samadele sisendtoimetele erinevalt. Seda asjaolu ei tohi ära segada objekti enda
stohhastilisusest tingitud määramatusega. Järelmõjuga objekti käitumist mõjutab lisaks
sisenditele veel tema olek. Roboti korral tähendab see, et manipulaatori liikumist mõjutavad
igal hetkel peale ajamite juhttoimete ka kõigi mehaaniliselt seotud lülide kiirused ja
kiirendused.

Järelmõjuga süsteemi kõige üldisemaks matemaatiliseks mudeliks on abstraktne dünaamiline


süsteem

Σ:( T ,U , Qu , H , Qh , X , Y , ϕ, ψ ),

mille komponentideks on
T - reaalarvuliste ajahetkede hulk;
U - juhttoimete hetkväärtuste hulk;
Qu - lubatavate juhttoimete kui ajafunktsioonide hulk,
kusjuures u(t) ∈ Qu;
H - häiringute hulk;
Qh - lubatavate häiringute kui ajafunktsioonide hulk,
kusjuures h(t) ∈ Qh;
X - olekute hulk ehk olekuruum;
Y - väljundite hulk;

ϕ [t, to, xo, u(*), h(*)] - sisendi-oleku kujutis ja

ψ (t, x) - oleku-väljundi kujutis.

Funktsioonid u(*) ja h(*) tähistavad vastavalt juhttoimeid ja häiringuid teatud kindla


ajavahemiku jooksul. Siledas dünaamilises süsteemis on ϕ(*) ja ψ(*) kõigi argumentide
järgi pidevad funktsioonid, kusjuures ϕ(*) on diferentsiaalvõrrandisüsteemi

dx ( t )
ϕ: = F x ( t ), u( t ), h( t ), p ( t ), t (1.1)
dt

19
lahendiks algoleku xo = x(to) korral. ψ(*) on aga võrrandisüsteemi

ψ: y ( t ) = G x ( t ), h( t ), t (1.2)

lahendiks, kus p(t) on parameetrite vektor.

Võrrandit (1.1) nimetatakse dünaamilise süsteemi olekuvõrrandiks ja võrrandit (1.2)


väljundivõrrandiks.

Selleks et formaliseerida jaotises 1.1 püstitatud juhtimisülesanne - liikuda olekuruumi punktist


A punkti B (joon. 1.10) - , on otstarbekas defineerida sündmuse mõiste. Sündmuse

Si = S ( ti , xi ) ∈ ( T × X )

all mõistetakse seda, et hetkel ti ∈ T, on objekt olekus xi ∈ X. Järelikult on sündmus määratud


nii objekti oleku kui ka ajahetkega.

x
2
Sf
o
o xf

1
2

o
xo
0 x1

Joonis 1.10. Soovitud (1) ja tegelik (2) liikumine olekuruumis


algolekust xo lõppolekusse xf

Standardne juhtimisülesanne on matemaatiline formalism, mille moodustavad sile


dünaamiline süsteem ∑ , selle soovitud lõppsündmuste hulk S, lubatavate juhttoimete hulk
Qu, algsündmuste hulk I ja juhtimise kvaliteedi mõõt J[to, xo, u(*)] ning nõue, mille kohaselt
tuleb leida iga sündmuse (to, xo) ∈ I jaoks juhtimisseadus u(*) ∈ Qu, mis teisendab
algsündmuse (to, xo) ∈ S lõppsündmuseks (tf, xf) ∈ S nii, et juhtimise kvaliteedi mõõt J(*)
oleks samaaegselt minimaalne.

20
Kui optimaaljuhtimise ülesanne õnnestub lahendada nii, et juhttoimete vektor u on ainult
ajafunktsioon u(t), kus t ∈ (to, tf), siis on tegemist optimaalse programmjuhtimisega.
Seejuures võib leitud programm u(*) olla soovitud olekutrajektooriks (seadesuuruseks) ühele
või mitmele alama taseme juhtimissüsteemile. Kui aga optimaaljuhtimise ülesande lahendiks
saadakse juhttoimete vektor u funktsioonina objekti olekust u[x(t)], siis võib väita, et
matemaatiliselt on lahendatud optimaalse tagasisidestatud süsteemi sünteesi ülesanne.

Sileda dünaamilise süsteemi puhul on juhtimise kvaliteedi mõõdul järgmine üldkuju:

tf

J [t 0 , x 0 , u (∗)] = K (t f , x f ) + ∫ L[ϕ (t , t 0 , x0 , u(∗), h(∗) )u(t ), t ]dt , (1.3)


t0

kus K(*) ja L(*) on skalaarsed funktsioonid, mis iseloomustavad lõppoleku ja objekti tegeliku
olekutrajektoori kvaliteeti.

Iga juhtimisülesande lahendamiseks tuleb see kõigepealt sõnastada standardse


juhtimisülesande termineid kasutades ja määrata vastavad juhtimisülesande komponendid.

Juhtimisobjektiks võib olla pidev dünaamiline süsteem, diskreetne dünaamiline süsteem


või lõplik automaat. Dünaamiline süsteem on pidev siis, kui tema hetkede hulgaks T on
positiivsete reaalarvude hulk. Diskreetse süsteemi korral on hetkede hulgaks positiivsete
täisarvude hulk. Pidevate süsteemide korral on tegemist pideva ajaga ning diskreetsete
süsteemide korral diskreetse ajaga. Pidevate süsteemide kirjeldamiseks kasutatakse
diferentsiaalvõrrandeid, diskreetsete süsteemide kirjeldamiseks aga diferentsvõrrandeid.

Pidevad ja diskreetsed süsteemid on omavahel seotud, sest diferentsiaalvõrrandeid


lahendatakse lõplike juurdekasvude meetodil ja algebraliste võrrandite abil. Samuti saab
pidevaid dünaamilisi süsteeme juhtida diskreetsete seadmetega.

Dünaamiline süsteem on lõplike mõõtmetega siis, kui tema olekuruum on lõplikumõõtmeline,


s. t. tema olekute hulk X on samuti lõplik. Süsteemi, mille olekute hulk on lõplik ja aeg
diskreetne, nimetatakse lõplikuks automaadiks.

Väga sageli kasutatakse juhtimisobjektide kirjeldamiseks lineariseeritud mudeleid.


Dünaamiline süsteem on lineaarne siis, kui tema sisendi-oleku ja oleku-väljundi kujutised (*)
ja (*) on lineaarsed kõigi t ∈ (to, tf) korral. Teisiti öeldes, lineaarse süsteemi kõigi lülide
dünaamikat kirjeldavad lineaarsed võrrandid, s. o. lineaarsed algebralised, diferentsiaal- või
diferentsvõrrandid.

Lineaarsete süsteemide teooria on tänaseks väga põhjalikult läbi töötatud ning leidnud
ulatuslikku käsitlust erialakirjanduses. Seepärast kasutatakse mittelineaarsete süsteemide
uurimiseks valdavalt lineaarsete süsteemide teooriat. Oluliste mittelineaarsuste korral
jaotatakse need süsteemid lineaarseteks ja mittelineaarseteks osasüsteemideks, mis
märgatavalt lihtsustab süsteemide analüüsi ja sünteesi. Näiteks eraldatakse ülejäänud

21
süsteemist releetoimeline (binaarne) element või mõni muu oluliselt mittelineaarse
karakteristikuga element.

22
Mittelineaarse süsteemi lineariseerimine põhineb eeldusel, et statsionaarses režiimis on
süsteemi oleku kõrvalekalle soovitud olekust väike. Lineariseerimiseks kasutatakse mitut
moodust. Kõige lihtsam on süsteemi elementide mittelineaarsete karakteristikute asendamine
statsionaarse tööpunkti ümbruses lineaarsetega. Süsteeme, mida kirjeldavad mittelineaarsed
diferentsiaalvõrrandid, lineariseeritakse nende funktsioonide arendamisega Taylori ritta.
Näiteks diferentsiaalvõrrandi

ϕ (u , u ' , u" ,... y , y © , y" ,... )

võib esitada Taylori reana püsirežiimi punktis (uo, yo) järgmiselt:

∂ϕ ∂ϕ ∂ϕ
( ) 0 ∆u + ( ) 0 ∆u' + ( ) 0 ∆u" +...
∂u ∂ u' ∂u"
∂ϕ ∂ϕ ∂ϕ
...( ) 0 ∆y + ( ) 0 ∆y ' + ( ) 0 ∆y " +... ≈ 0. (1.4)
∂y ∂y ' ∂y "

Võrrand (1.4) kujutab endast lineaarset diferentsiaalvõrrandit juurdekasvudes ehk muutudes.

Diskreetsete süsteemide töö põhineb signaalide kvantimisel ja fikseerimisel (sample and


hold). Sisuliselt tähendab see pideva signaali asendamist kindlatel hetkedel määratud
diskreetsete signaalide hulgaga. Impulsside väljastamise intervalli nimetatakse signaali
kvantimise sammuks. Optimaalne kvantimise samm leitakse eeldusel, et ei esine info kadu, s.
t. sõltuvalt pideva signaali sagedusspektrist:

t = π / ω max , (1.5 )

kus ω max on pideva funktsiooni spektri maksimaalne sagedus.

Lineaarset diskreetset süsteemi uuritakse lähtudes eeldusest, et superpositsiooni printsiibi


järgi on lineaarse süsteemi reaktsioon impulss-signaalile võrdne üksikutest impulssidest
põhjustatud reaktsioonide summaga.

Manipulaatori liikumist võib eespool toodud matemaatilistele formuleeringutele toetudes


kirjeldada järgmise diferentsiaalvõrrandiga:

x ' ( t ) = F x p , x ( t ), p( t ), h( t ), u( t ) , (1.6)

kus x ' ( t ) = dx / dt ,
xp - manipulaatori soovitud olek ehk programmliikumine,
x(t) - manipulaatori tegelik olek,
p(t) - parameetrite vektor,
h(t) - häiringuvektor,
u(t) - juhttoimete vektor.

23
Roboti juhtimissüsteemi sünteesimisel leitakse tema juhtimisseadus. Sõltuvalt sellest millist
informatsiooni roboti juhtimiseks kasutatakse, mis on juhtimise eesmärk ning milliseid
kvaliteedinõudeid manipulaatori liikumisele esitatakse, võib juhtimisseadusel olla erisugune
matemaatiline kuju. Näiteks võib tuua järgmised juhtimisseadused:

1) u( t ) = U x p (t ) (1.7)
2) u( t ) = U x p ( t ), x ( t ) (1.8)
3) u( t ) = U x p ( t ), x ( t ), p( t ) (1.9)
4) u( t ) = U x p ( t ), x ( t ), p( t ), h( t ) (1.10)

Võrrandi (1.7) korral sõltub juhttoime ainult etteantud programmliikumisest xp(t). See
tähendab, et juhtimine toimub avatud süsteemis ning tagasisideahelad puuduvad. Teine
seadus (1.8) põhineb etteantud ja soovitud olekute võrdlemisel, mille tulemustest sõltuvalt
leitakse viga korrigeeriv juhttoime. Kolmas seadus arvestab olekute hindamisel ka parameetrite
muutumist. Funktsiooni p(t) saab leida juhtimisobjekti mudeli abil. Neljanda seaduse (1.10)
korral võetakse juhtimisel arvesse ka häiringusignaalid h(t). Kahjuks on enamikku häiringuid
raske mõõta, sest puuduvad sobivad andurid.

1.4. Riistvara- ja tarkvarahierarhia

Roboti juhtseadmed täidavad mitmesuguseid juhtimisfunktsioone. Sõltuvalt juhtimise


eesmärgist ning juhtimisobjekti mudelist koostatakse süsteemi projekteerimisel juhtseadme
talitluse eeskiri ehk tegevusjuhis, mida nimetatakse juhtimise algoritmiks. Algoritmi
realiseerimiseks on kaks teed. Esiteks võib konstrueerida spetsiaalse juhtseadme, mille
elemendid ja struktuur määravad üheselt ära seadme talitluse. Seega kätkeb seadme aparatuur
ehk riistvara endas ka juhtimise algoritmi. Teiseks võib kasutada universaalset juhtseadet,
mille talitluse määrab ära salvestatud programm. Universaalseteks juhtseadmeteks on arvutid,
mis võimaldavad realiseerida mitmesuguseid formaliseeritud tegevusjuhiseid. Arvuti või
juhtseadme tööks vajalikku programmide kogumit nimetatakse seadme programmvaraks ehk
tarkvaraks. Juhtseadme riistvara ja tarkvara on lahutamatud. See tähendab, et riistvara on
vajalik üksnes siis, kui ta täidab mingit algoritmiga etteantud juhtimisfunktsiooni. Ja vastupidi,
tarkvara saab täita oma funktsioone ainult siis, kui on olemas riistvara, mille abil need
funktsioonid realiseeritakse. Selles väljendub riistvara ja tarkvara dualism. Juhtseadme
konkreetse kasutaja seisukohast vaadatuna võib suurema tähtsusega olla kord seadme
riistvara, kord tarkvara.

24
Juhtseadme riist- ja tarkvara koosneb elementidest ja plokkidest, mida ühendab kindel
struktuur. Enamiku juhtseadmete riistvara põhineb pooljuhtelementidel, alates transistoridest
ja dioodidest kuni suurte integraallülitusteni välja. Sõltuvalt integratsiooniastmest ja
funktsionaalsetest võimalustest on need elemendid paigutatud joonisel 1.11 eri
hierarhiatasanditele. Nendest koostatud juhtseadmed erinevad üksteisest ka keerukuse ja
funktsionaalsete võimaluste poolest. Robotite juhtseadmetest on lihtsaimad
programmeeritavad kontrollerid. Täiuslikemate robotite juhtimiseks kasutatakse ühe- ja
mitmeraalijuhtseadmeid.

Elementide arv
(integratsiooniaste)

10 9
Mitmeraali-
juhtseadmed,
Tarkvara
10 8 adaptiiv- ja
programmjuhtimine
10 7
Üheraalijuhtseadmed,
10 6 programmjuhtimine

10 5 Programmeeritavad
kontrollerid
10 4
Programmeeritav loogil. maatriks
10 3
Funktsionaalloogikalülitused
10 2
Loogikaelemendid
10 Riistvara
Diskreetsed elemendid
1

Joonis 1.11. Diskreetsete juhtseadmete hierarhia

Tarkvara elementideks on mitmesugused programmid. Programmidel on samuti hierarhiline


struktuur, kus ühed programmid on teiste suhtes alamprogrammideks, teised omakorda aga
kolmandate alamprogrammideks.

Hierarhiat loetakse süsteemi keerukuse tunnuseks. Teatud keerukusest alates ei suuda üks
keskjuhtseade enam kõiki juhtimisfunktsioone rahuldavalt täita. Siis võetakse
üheraalijuhtseadmete asemel kasutusele mitmeraalijuhtseadmed ning hierarhilise juhtimise
põhimõte. Kogu juhtimissüsteem muutub sel juhul mitmetasandiliseks. Juhtimisfunktsioonid
jaotatakse eri tasandite vahel: alumine tasand täidab suhteliselt lihtsaid, kuid kiiret reageerimist
nõudvaid ülesandeid, ülemised aga keerukamaid, üldisema iseloomuga ülesandeid.
Kahetasandilise süsteemi korral nimetatakse eri tasanditel toimuvat juhtimist vastavalt
lokaalseks ja keskjuhtimiseks. Roboti puhul juhitakse lokaalsel tasandil manipulaatori
ajameid, kusjuures iga ajamit juhib eraldi juhtplokk. Keskjuhtimine on ette nähtud
manipulaatori lülide liikumise kooskõlastamiseks ning roboti tööprotsessi korraldamiseks.

25
Mitmeraalijuhtseadmetes jaguneb ka tarkvara eri juhtimistasandite vahel. Seejuures
moodustab tarkvara riistvarast sõltumatu hierarhilise süsteemi, mis täiendab kogu
juhtimissüsteemi uute tasanditega. Näiteks võib tarkvara abil lisaks programmjuhtimisele luua
adaptiivjuhtimise või tehisintellekti tasandid, mille ülesandeks on programmide automaatne
muutmine või uute programmide koostamine.

Juhtseadmed võivad olla spetsiaalsed või universaalsed. Esimesed on ette nähtud ühetüübiliste
objektide ühetaoliseks juhtimiseks. Teised võimaldavad juhtida eri objekte (protsesse ja
seadmeid). Nii juhtseadmete riist- kui ka tarkvara liigitatakse spetsiaalseks ja universaalseks.
Seadmed, juhtplokid ja mehhanismid, mille konstruktsioon määrab üheselt nende
funktsioonid, on spetsiaalne ehk eririistvara. Sellele vastandina on universaalne riistvara
mitmeotstarbeline ja paindliku konstruktsiooniga. Universaalsus saavutatakse mehhanismide
ümberseadistamise, juhtseadmete ümberhäälestamise või ümberprogrammeerimise abil.
Mainitud tegevust võib nimetada unifitseerimiseks. Selle abil saab suhteliselt lihtsalt anda
seadmele uue otstarbe. Võrreldes unifitseerimise viise omavahel, osutub, et kõige tülikam on
mehhanisme ümber seadistada, kõige hõlpsam aga juhtseadmeid ümber programmeerida.
Seepärast kasutatakse universaalsete automaatide juhtimiseks ümberprogrammeeritavaid
juhtseadmeid.

Programmide salvestamiseks, säilitamiseks ning programmjuhtimiseks on mälu, kuhu võib


kirjutada erisuguseid programme. Mäluseadet loetakse samuti universaalseks riistvaraks,
kusjuures mälu maht on juhtseadme universaalsuse mõõt.

Programmide koostamist ja salvestamist nimetatakse programmeerimiseks Inimese jaoks


tähendab see suhtlemist automaadiga (arvuti või robotiga). Programmeerida on seda lihtsam,
mida mõistetavamad on programmides kasutatavate käskude sümbolid ning mida
arusaadavam on programmi struktuur. Kõige lihtsam oleks inimkeelne kirjeldus. Kahjuks pole
inimkeel alati üheselt mõistetav ja masinale arusaadav. Seepärast kasutatakse juhtseadmete
programmeerimiseks algoritmikeeli. Assemblerkeeled on koostatud juhtseadme või arvuti
riistvara ehitusest lähtudes. Nende kasutamine nõuab programmeerijalt juhtseadme talitluse
üksikasjalikku tundmist. Niinimetatud kõrgkeeled on inimlähedasemad. Kõrgkeele kasutaja ei
pea tundma juhtseadme ehitust. Program-meerimisel tuleb kirjeldada robotilt nõutavaid
liikumisi või roboti tööülesannet.

Robotite kõrgkeeli liigitatakse masin- ehk robotorienteeritud ja probleemorienteeritud


keelteks. Neist esimesed on kasutusel kindlat tüüpi robotite korral. Robotorienteeritud keelteks
nimetatakse neid sellepärast, et programmis kirjeldatakse manipulaatori üksikuid liikumisi,
mitte aga tööoperatsioone, milleks liikumised on vajalikud. Probleemorienteeritud keeled on
universaalsemad. Vastav programm kirjeldab tehnoloogiaprotsessis nõutavaid operatsioone,
mitte roboti käe liigutusi.

Programme salvestatakse ja töödeldakse kahendkoodis, mida nimetatakse ka masinakoodiks


Inimesele on see raskesti jälgitav ja väheülevaatlik. Inimesel on masinakoodis programmi
koostada väga tülikas. Et teisendada inimese koostatud kõrgkeelne programm masinale
arusaadavasse kahendkoodi, peab juhtseade kasutama teatud sisemist ehk süsteemset
tarkvara. Kuna selle tarkvara sisu ei sõltu roboti konkreetsest tööülesandest, nimetatakse seda

26
ka universaalseks tarkvaraks. Robotsüsteemi juhtimiseks ettenähtud konkreetset töö-
programmi võib lugeda aga spetsiaalseks ehk eritarkvaraks.

27
Tarkvara moodustab juhtseadme riistvara ja inimese vahel hierarhilise (mitmekihilise)
süsteemi. Osa tarkvarast on vahetus kokkupuutes riistvaraga, osa inimesega. On otstarbekas, et
inimene täidab ainult neid spetsiifilisi ülesandeid, millega juhtseade toime ei tule. Niisuguseks
ülesandeks on näiteks robotile konkreetse tööprogrammi koostamine. Mida täiuslikum on
robot, seda mahukam on tema mällu salvestatud universaalne tarkvara, mida robot vajaduse
korral ilma inimese abita kasutab. Universaalse riistvara ja tarkvara ühitamise tulemusena on
loodud niinimetatud püsivara, mis tähendab püsimälukiipidesse salvestatud programme.

Inimese ja automaadi ning riist- ja tarkvara vahekordi näitab joonis 1.12, kus RV tähistab
riistvara, TV tarkvara ja PV püsivara. Indeksid u ja s tähistavad riistvara ja tarkvara
universaalseid ja spetsiaalseid osasid. Mida universaalsem on automaat, seda vähem peab
inimene kohandama teda uueks tööks. Joonisel näitab seda viirutatud alade pindala.

INIMENE AUTOMAAT
Kõrgkeeles programmeeritav
Probleemorienteeritud
automaat
kõrgkeeles
programmeerimine
TVs TVu PV RV u RVs

Kõrgkeeles programmeeritav
Masinorienteeritud
automaat
kõrgkeeles
programmeerimine
TVs TVu RV u RV s
Juhtimis-
objekt
Masinakoodis programmeeritav
Masinakoodis automaat
programmeerimine
TVs RV u RV s

Ümberhäälestatav automaat
Häälestamine
RVs

Joonis 1.12. Automaadi riist- ja tarkvara ning inimese suhe automaadiga

28
Automaatjuhtimise võimalusi on aastakümneid piiranud juhtseadmete riistvara tehniline tase.
Arvutustehnika tormiline areng on olukorda juhtimistehnikas muutnud. Raalid on
universaalsed juhtseadmed, mille riistvara ja tarkvara võimaldavad realiseerida väga keerukaid
juhtimisalgoritme. Seepärast on juhtimisel kujunenud määravaks nõutavate programmide ehk
tarkvara loomine.

1.5. Programmjuhtimissüsteemide kujunemine

Juba vanaaja meistritel õnnestus luua mehaanilisi automaate, mis töötasid varem salvestatud
programmi järgi. Nüüdisaegsete programmjuhtimissüsteemide otsesteks eelkäijateks olid aga
keskaegsed muusika- ja mänguautomaadid ning kõige tavalisemad mehaanilised kellad. Et
programmiga juhitav tegevus kulgeb alati reaalses ajas, siis sobisid seda liiki juhtimiseks kõige
paremini kellamehhanismid, mis ühendati täitureid käitavate mehaaniliste prog-
rammikandjatega. Programmikandjatena kasutati mitmesuguseid pöörlevaid kettaid ja
trumleid, mille pinnal olid programmi kohaselt avad, nukid või tikud. Seepärast nimetatakse
neid kas nukk-ketasteks või tikktrumliteks. Iga nuki, tiku või ava ülesanne on käitada
mehaanilise mõjutamisega või ka käsusignaali väljastamisega teatud täitur. Kuna ketas või
trummel liigub tsükliliselt, s. t. iga täispöörde järel hakkab programm korduma, nimetatakse
niisuguseid juhtseadmeid tsüklilisteks. Lihtsaid tsüklilisi mehaanilisi programmaatoreid
kasutatakse tänapäeval ulatuslikult paljudes majapidamismasinates, nagu pesu- ja
õmblusmasinad, rösterid, elektripliidid jms. Neid läheb tarvis ka tööstusseadmetes, sealhulgas
tööstusrobotite eelkäijates - teisaldusautomaatides. Teisaldusautomaat on muutumatu
tööprogrammiga automaatmanipulaator, mida kirjanduses nimetatakse ka autooperaatoriks.
Erinevalt robotitest pole ta ümberprogrammeeritav. Mehaaniliste programmaatorite eeliseks on
lihtsus ning suur töökindlus, kuid programmi vahetamiseks tuleb programmikandjal muuta
nukkide või tikkude asetust või programmikandja välja vahetada.

Elektrienergia rakendamise tulemusena levisid juba möödunud sajandi lõpul elektrilised


programmaatorid. Üldine põhimõte jäi neil samasuguseks kui mehaanilistel
programmaatoritel, kuid nukid ja tikud käitasid elektrikontakte, mis lülitasid sisse ja välja
elektrilisi ja elektromehaanilisi täitureid. Ajapikku võeti kellamehanismi asemel kasutusele
elektromehaaniline ajam. Nii loodi sammvalijad, programmreleed, komandokontrollerid
ning paljud teised elektrilised juhtimisaparaadid. Programmjuhtimise kõrval vajati neid ka
keerukate elektriahelate kommuteerimisel.

Vaadeldud seadmete ühiseks omaduseks on, et kõik nad on järjestikused, tsüklilised


juhtimisaparaadid, kus tagasipöördumine mõne eelneva käsu juurde või käskude kordamine
teises järjekorras pole võimalik. Need puudused piiravad oluliselt järjestikuste tsükliliste
programmaatorite kasutamist. Lihtsuse ning suure töökindluse tõttu kasutasid neid siiski
paljud maailma firmad oma esimeste automaatmanipulaatorite juhtimiseks. Programmaatorite
abil loodi tsüklilise programmjuhtimisega lihtsaid roboteid, nn. pick and place tüüpi roboteid,
mil on lihtne tööprogramm (10...100 järjestikust sammu) ja väike käskude arv (10...20). Nende
puuduseks on programmi vahetamise keerukus. Käskude järjekorra muutmiseks tuleb

29
programmikandja mehaaniliselt ümber häälestada. Manipulaatori positsioonimispunktide
asukohta muudetakse aga, paigutades ümber teekonnalüliteid või piirikuid.

Juhtseadmete täiustamisel otsiti programmikandjale sobivat asendajat. Kuna samal ajal


rakendati arvutites ulatuslikult perfokaarte ja perfolinti, siis katsetasid paljud firmad neid
robotite juhtseadmetes. Paraku ei õigustanud perfokaartid ja -lindid end robotite
juhtseadmetes, sest nõudsid paremaid ekspluatatsioonitingimusi kui tikktrumlid või nukk-
kettad. Robotite töö iseärasuseks arvutitega võrreldes on nimelt rasked töötingimused.
Perfokaartide ja -lintide puhul tuli muuta käskude lugemise põhimõtet, sest programmikandja
vähese mehaanilise tugevuse tõttu polnud info mehaaniline lugemine enam võimalik.
Kasutusele võeti optilised infolugemisseadmed, kus avasid läbivale valgusvoole reageerisid
tundlikud fotodioodid, mis muutsid valgussignaali elektriliseks. Sellist infolugemisviisi
kasutatakse ka koos trummelsalvestiga (joon. 1.13).

Fotodioodid

Valgusallikas

+
-

Tikktrummel

Joonis 1.13. Optilise infolugemisega tikktrummel

Kui osa trumli avasid täita programmi kohaselt tikkudega, teine osa aga jätta täitmata, siis
langeb valgus ainult teatud fotodioodidele ja nende signaalid käitavad programmi käsule
vastavad täiturid. Nii moodustab iga trumli avade rida ühe programmi käsu. Programmi
maksimaalne pikkus võrdub ridade arvuga trumlis. Pärast käsu täitmist pöördub trummel
automaatselt ühe rea võrra edasi. Avade arv reas ehk käsusõna pikkus sõltub robotile ja
tehnoloogiaseadmetele antavate juhtsignaalide arvust. Kirjeldatud programmiseade on näiteks
kasutusel tööstusroboti "Universal 5" juhtimissüsteemis. Analoogilisi või põhimõttelt
sarnaseid programmjuhtimisseadmeid kasutati paljudes maailma robotites, alates esimeste
tööstusrobotite loomisest kuni 1960. aastate lõpuni.

Lihtsamaid roboteid juhitakse ka sammajamiga komandokontrollerite abil (joon. 1.14).


Komandokontroller on mitmeastmeline paljude kontaktipaaridega ümberlüliti. Kui lüliti iga

30
aste viia vastavusse programmi ühe käsuga ja eri kontaktipaaride ahelad ühendada roboti
täiturite lülitamiseks, saab komandokontrolleriga juhtida samuti nagu tikktrumlitega.

Sammajamiga komandokontrolleri programmeerimine tähendab programmile vastavate


elektriliste ühenduste tegemist. Ühendused võivad olla lahtivõetavad (ümberühendatavad). Sel
juhul kasutatakse ühenduste tegemiseks spetsiaalseid kommutatsioonivälju, mille eriliigiks
on dioodmaatriksid, mis võimaldavad vähendada elektriliste lülituskontaktide arvu.
Programmi järjestikuseks täitmiseks ette nähtud sammajami saab asendada elektroonse
programmiloenduri ja käsudekoodriga, mis lubab programmis tagasi pöörduda eelnenud
käskude juurde ning korrata käske suvalises järjekorras.

Juhtplokk

Signaalid
lõpplülititelt

Joonis 1.14. Sammajamiga komandokontroller

Kõik loetletud seadmed ja juhtimispõhimõtted kuuluvad robotite esiajalukku.


Integraallülitused ja pooljuhtmälud tõrjusid need robotiehitusest kiiresti välja. Nüüdisroboteid
juhitakse valdavalt mikroprotsessoritel põhinevate raaljuhtseadmete abil.

31
1.6. Juhtimissüsteemide liigitus

Robotite juhtimissüsteeme liigitatakse mitmesuguste tunnuste, näiteks juhtseadme elementide


baasi, manipulaatori liikumise iseloomu ja täpsuse, juhtimistasandite arvu jne. järgi. Kuna
robot asendab tööprotsessis inimest, siis on kõige otstarbekam liigitada juhtimissüsteeme selle
järgi, kuidas inimene on seotud robotite juhtimisega. Sellest põhimõttest lähtudes on
koostatud joonisel 1.15 toodud manipulaatorite ja robotite juhtimissüsteemide liigitus.

Kõige lihtsamad manipulaatorid on käsijuhtimisega, s. t. inimene täidab kõiki


juhtimisfunktsioone. Paljusid manipulaatoreid juhitakse mitmesuguste automaatsete
alamsüsteemide abil. Juhtimisfunktsioonid on siis jaotatud inimese ja automaadi vahel.
Niisugust juhtimist nimetakse automatiseeritud juhtimiseks.

Manipulaatorit juhtides võtab inimene pidevalt vastu, töötleb ja edastab informatsiooni -


inimene kuulub funktsionaalselt juhtimissüsteemi koosseisu. Tema ülesandeks on manipulaa-
tori liikumise ja töö kontroll ning manipulaatori mõjutamine juhtseadmetega. Kontrollitakse
visuaalselt või telepildi vahendusel. Silma järgi raskesti hinnatavate suuruste kohta saadakse
infot anduritelt ja telekontrolli vahenditelt.

Manipulaatori ajamite tööd juhib inimene nupplülitite abil edastatavate diskreetsete käskudega
või seadurilt väljastatavate signaalidega. Kui seadur on mehaaniliselt sidestatud manipulaatori
lülidega, on tegemist lihasjõu ja jäsemete liikumisulatuse võimendiga, mida nimetatakse
eksoskeletoniks (välisskeletiks). Enamasti on seadur sidestatud manipulaatoriga elektriliste,
pneumaatiliste või muud liiki signaalide abil. Jõu tagasimõjuga süsteemides tunneb
operaator seaduri abil manipulaatori lülidele mõjuvaid jõudusid, mis võimaldab tal reageerida
ootamatutele või silmale märkamatuks jäävatele takistustele töötsoonis.

Peale lihasjõuga toimivate juhtseadmete - nupplülitite ja seadurite, juhitakse manipulaatorit ka


bioimpulssidega ja kõne abil. Sellised süsteemid on keerukad ning nõuavad bioimpulsside
mõõtmiseks ja inimkõne tuvastamiseks eriseadmeid.

Roboteid inimene vahetult ei juhi. Inimese ülesandeks on robot tööks ette valmistada.
Juhtimise seisukohalt tähendab see tööprogrammide koostamist ning sisestamist juhtseadme
mällu. Mida paindlikum ja iseseisvam peab robot olema, seda suuremat ja võimsamat tarkvara
ta vajab. Eristatakse jäiga programmiga ehk programmjuhtimisroboteid ja isekohastuva
programmiga ehk adaptiivjuhtimisroboteid. Eriti suure isekohastumisvõimega roboteid
nimetatakse intellektuaalseteks. Need kolm juhtimissüsteemi vastavad kolmele
robotipõlvkonnale. Põhiliselt kasutatakse tööstuses mitmesuguseid programm-
juhtimisroboteid. Neid on üksikasjalikult võrreldud tabelis 1.1.

32
Manipulaatorite ja robotite
juhtimissüsteemid

Käsi- ja automatiseeritud Automaatjuhtimisega (robotid)


juhtimisega (manipulaatorid)

Programmjuhtimis-
Juhtimine Kontroll robotid
1. Nupplülititega 1. Visuaalselt
2. Seaduritega Adaptiivjuhtimisrobotid
2.1. Mehaanilise 2. Telepildi
sidestusega vahendusel
2.2. Jõu tagasi- 3. Andurite ja Intellektuaalsed
mõjuta telekontrolli robotid
2.3. Jõu tagasi- vahenditega
mõjuga
3. Bioimpulssidega Positsioon- või Adaptiivjuhti- Adaptiivjuhti-
kontuurjuhtimine mine isehääles- mine, iseprog-
4. Kõnega jäiga programmi tuva programmi rammeerimine
järgi järgi isemodelleeri-
mine, iseõppi-
mine ja iseorga-
niseerimine

Juhtimine Programmeerimine

Joonis 1.15. Manipulaatorite ja robotite juhtimissüsteemid

33
Tabel 1.1
Programmjuhtimisrobotid
Programmjuhtimisroboti liik Põhilised juhtimisülesanded Infotöötluse ja infotöötlusvahendite Infokogumisseadmete liik ja töö
tunnused iseloom

Tsüklilise positsioonjuhtimisega Manipulaatori ja robotsüsteemi Manipulaatori liikumist kontrollitakse Kasutatakse positsioonimispunkte


robot kuuluvate seadmete autonoomne positsioonimispunktides. Väljaspool määravaid piirikuid ja teekonnalüliteid
juhtimine. Seadmete töörežiimide neid punkte tagasiside puudub. ning andureid robotsüsteemi seadmete
automaatne kontroll ja signalisatsioon Programmi vahetamine nõuab roboti ja töödeldavate detailide
ümberhäälestamist. Juhtimiseks sobivad kontrollimiseks
lihtsad, väikese mäluga
programmeeritavad kontrollerid

Positsioonjuhtimisega robot Manipulaatori liikumise arvjuhtimine ja Manipulaatori liikumist kontrollitakse Kasutatakse asendit, kiirust ja ajamite
robotsüsteemi seadmete loogiline pidevalt, kuid positsioonitakse koormust määravaid andureid,
juhtimine. Seadmete töörežiimide diskreetsetes punktides. Tööseadme robotsüsteemi seadmete tööd ja
automaatne kontroll ja diagnostika. trajektoori pole võimalik teisaldatavate esemete paigutust
Infovahetus operaatoriga ning programmeerida, sest ajamid töötavad kontrollivaid andureid
juhtarvutitega.Roboti õpetamine üksteisest sõltumatult. Töödeldavate
programmide pikkus on mõnisada
sammu. Juhtimiseks sobivad lihtsad
välismäluga arvprogrammseadmed

Kontuurjuhtimisega robot Lisaks positsioonjuhtimisega robotile Manipulaatori liikumist kontrollitakse Sama nagu positsioonjuhtimisega
analüütiline programmeerimine ning pidevalt. Tõöseadme trajektoori suur robotitel
operaatori töö dialoogirežiimis tugipunktide arv võimaldab keerukaid
ruumilisi liikumisi. Trajektoori
interpoleerimine. Juhtimiseks sobivad
täiuslikud arvprogrammseadmed

34
Tabel 1.2.
Juhtseadmete tehnilised andmed
Juhtseadet Tsükliline Positsioonjuhtimine Kontuurjuhtimine
iseloomustav positsioonjuhtimine
tehniline näitaja

Seadme liik Programmeeritav Ühe- või mitmeraali- Ühe- või mitmeraali-


kontroller juhtseade juhtseade
Juhitavate liikumiste arv - 5...8 5...8
Loogikasisendite ja 6...64 32...128 32...128
väljundite arv
Infosõna järkude arv 8 8, 16 16 ja enam
Manipulaatori liikumine Punktist punkti Punktist punkti Mööda etteantud
trajektoori
Positsioonimisviis Ajam peatatakse Servoajamiga Servoajamiga asendi- ja
mehaaniliste piirikute asendianduri signaali kiirusanduri signaali
või teekonnalülitite abil järgi järgi
Asendianduri liik - Täppispotentsiomeetrid, Täppispotentsiomeetrid,
pöördtrafod, pöördtrafod,
fotoelektrilised impulss- fotoelektrilised impulss-
ja koodandurid ja koodandurid
Kiiruse juhtimine Ei juhita Astmeliselt kuni 8 astet Sujuvalt
Kiiruseanduri liik - Tahhogeneraatorid või Tahhogeneraatorid või
impulssandurid impulssandurid
Programmeerimisviis Programmi mehaaniline Õpetamine Õpetamine ja
või elektriline sisestamine analüütiline
ja teekonnalülitite programmeerimine
häälestamine
Programmikandja Lülitite või pistikutega Integraalne Integraalne
kommutatsiooniväli, pooljuhtmälu, pooljuhtmälu,
integraalne ümbrikketasmälu ümbrikketasmälu
pooljuhtmälu
Terminaalseade Nupplülitite, arvnäidiku Nupplülitite, arvnäidiku Kuvar ja klahvistik ning
ja valgussignalisat- ja valgussignalisat- teisaldatav õpetamispult
siooniga pult siooniga pult ning
teisaldatav õpetamispult
Tarkvara Kõrgkeel binaarsete Robotorienteeritud Robot- või probleem-
süsteemide loogiliseks ja kõrgkeel manipulaatori orienteeritud kõrgkeel
programmjuhtimiseks positsioonjuhtimiseks manipulaatori
ning robotsüsteemi positsioon- ja
loogiliseks ja kontuurjuhtimiseks ning
programmjuhtimiseks robotsüsteemi
loogiliseks ja
programmjuhtimiseks
Töörež iimid Automaatne, Automaatne, Automaatne,
poolautomaatne, poolautomaatne, poolautomaatne,
käsijuhtimis-, õpetamis- käsijuhtimis-, käsijuhtimis-, õpetamis-
ja kontrollirež iim õpetamis- ja ja kontrollirež iim
kontrollirež iim
Toitepinge
Tarbitav võimsus
Mõõtmed
Mass

35
Positsioonjuhtimisega robotid sobivad töödeks, kus manipulaatori tööseadist (haaratsit või
tööriista) tuleb täpselt positsioonida ainult diskreetsetes punktides. Niisuguseid roboteid
kasutatakse esemete teisaldamisel, kontaktkeevitusel, stantsimisel jm. Lihtsamate teisalduste
korral kasutatakse tsüklilise positsioonjuhtimisega roboteid, millel on väike (kuni 10 igal
lülil) positsioonimispunktide arv. Programmjuhtimisrobotitest on kõige täiuslikumad
kontuurjuhtimisega robotid, mille tööseadised järgivad programmiga etteantud trajektoori.

1.7. Juhtseadmete otstarve ja põhilised tehnilised näitajad

Programmjuhtimisrobotite juhtseadmeid liigitatakse manipulaatori liikumise järgi positsioon-


ja kontuurjuhtimisseadmeteks. Kõige lihtsamaid positsioonjuhtimisseadmeid, mille korral
manipulaatorit positsioonitakse teekonnalülitite või mehaaniliste piirikute abil, nimetatakse
programmeeritavateks kontrolleriteks. Täiuslikumate robotite juhtimiseks kasutatakse ühe-
või mitmeraalijuhtseadmeid. Erinevate juhtseadmete põhilised tehnilised näitajad on
tabelis 1.2.

Programmeeritavate kontrollerite sisend- ja väljundsignaalidel on vaid kaks väärtust.


Automaatjuhtimisteoorias nimetatakse niisuguseid signaale loogikasignaalideks ning
juhtimissüsteeme binaarseteks süsteemideks. Juhtimisobjekti talitlust kontrollitakse
mõõtereleede abil, mille rakendumine tähistab kvalitatiivset muutust süsteemis. Näiteks
otsustatakse teekonnalülitite väljundite järgi, kas manipulaatori tööseadis on jõudnud
positsioonimispunkti või mitte. Väljundsuuruste kvantitatiivseid väärtusi binaarsetes
süsteemides ei kontrollita. Kuna signaali hüppeline muutus sisaldab ühe biti informatsiooni,
siis nimetatakse loogikasignaale ka ühebitisteks signaalideks. Sellega eristatakse neid
arvsignaalidest, mida kodeeritakse mitmekohalise kahendarvuga ning mille paralleelkoodis
ülekandmiseks läheb tarvis mitmejuhtmelist siini. Loogikasignaalide nimetus on põhjendatud
sellega, et kahevalentses loogikas on signaalil kaks võimalikku tõeväärtust - tõene (1) ja väär
(0). Seepärast võib öelda, et programmeeritavad kontrollerid on binaarsed juhtseadmed, mis
on määratud süsteemi loogiliseks juhtimiseks mällu salvestatud programmi järgi.

Roboti loogilisel juhtimisel tuleb määrata tööoperatsioonide õige järjekord, kaitsta inimesi ja
seadmeid avariide eest ning signaliseerida ebanormaalsete režiimide tekkest. Tsüklilise
positsioonjuhtimisega robotites juhitakse loogikasignaalidega ka manipulaatori liikumist.

Positsioon- ja kontuurjuhtimisrobotite liikumist iseloomustavad kvantitatiivsed signaalid,


milleks võivad olla pidevatoimelised analoogsignaalid või kodeeritud ehk arvsignaalid. Mida
rohkem on süsteemis eri liikumisparameetrite, s. o. asendi-, kiiruse- ja kiirenduse andureid,
seda paremini saab roboti liikumist juhtida.

36
Anduri mõõtetäpsus ja väljastatava informatsiooni hulk on võrdelises seoses. Näiteks
vähem kui 0,1 %-se mõõtevea saavutamiseks peab signaal võimaldama eristada 1000 väärtust
ehk diskreetsusastet. Vastava kodeeritud informatsiooni edastamiseks tuleb kasutada vähemalt
10-järgulist kahendarvu, sest 210 = 1024. Manipulaatori lülide asendi mõõtmisel võib
diskreetsusastmete arv ühes koordinaadis olla 215...216. Anduri väljundsignaali kahendjärkude
arv määrab tavaliselt ka juhtseadme infosõna pikkuse, sest seadme töökiiruse seisukohast pole
signaali jaotamine osadeks ning nende järjestikune edastamine ja töötlemine otstarbekas. Mida
täpsem ja dünaamilisem on juhitav liikumine, seda pikem peab olema infosõna ning seda
suurem juhtseadme töökiirus.

Roboti liikumise määrab programm, milles fikseeritakse positsioonimispunktid, trajektoori


tugipunktid, kiirus jt. liikumisparameetrid. Positsioonjuhtimisrobotite korral on
programmeeritud informatsiooni hulk suhteliselt väike. Lisaks positsioonimispunktidele
antakse vajaduse korral ette üksikud trajektoori tugipunktid näiteks takistustest möödumiseks
ning maksimaalne kiirus, mis valitakse astmeliselt, kusjuures astmete arv on väike.

Kontuurjuhtimisega robotites määratakse trajektoor tugipunktide koordinaatidega. Kui robot


töötab, läbib manipulaator tugipunkte etteantud kiiruse ning täpsusega. Tugipunktide vahel
liigub manipulaator mööda arvutatud trajektoori. Protseduuri, millega tugipunktide
koordinaatide järgi määratakse pideva liikumistee koordinaadid, nimetatakse trajektoori
interpoleerimiseks. Seda teostatakse nii riist- kui ka tarkvara vahenditega, mida nimetatakse
interpolaatoriteks.

Trajektoori interpoleerimise meetodid sõltuvalt sellest, milliseid matemaatiliste funktsioonide


interpoleerimisvalemeid kasutatakse. Interpolatsiooniülesande lahendamisest sõltub roboti
liikumise täpsus ning trajetoori tugipunktide nõutav tihedus, mis määrab omakorda roboti
tööprogrammi pikkuse ja juhtseadme mälu mahu.

Roboti tööprogramm koostatakse vastavalt tehnoloogiaprotsessi juhtimise algoritmile.


Programme esitatakse nii tabelite kujul kui ka algoritmikeeles.

Tabelprogramme kasutatakse positsioonjuhtimisega robotites, kus ruumipunktide


koordinaate programmeeritakse roboti õpetamisega, s. t. programmi koostamiseks tuleb
robotile kõik vajalikud liikumised ette näidata. Manipulaator juhitakse järjekorras kõikidesse
positsioonimispunktidesse ning fikseeritakse juhtseadme mälus tema asendiandurite
signaalid. Robotsüsteemi loogiliseks juhtimiseks mõeldud programm antakse sel juhul ette
juhtpuldilt lülitite ja juhtnuppude abil. Programmeerimise lihtsustamiseks on otstarbekas
koondada juhtpuldilt sisestatav informatsioon tabelisse, kus näidatakse ära kõik robotsüsteemi
järjestikused operatsioonid ning nende kordumise tsüklid.

Analüütilise programmeerimise korral määrab juhtseade positsioonimispunktide ja trajektoori


koordinaadid automaatselt vastavalt roboti töökoha ja robotsüsteemi seadmete kirjeldusele.
Robotiprogrammid koostatakse robotorienteeritud või probleemorienteeritud kõrgkeeltes.
Robotorienteeritud keeles programm kirjeldab manipulaatori üksikuid liikumisi.
Probleemorienteeritud keeles programm kirjeldab tehnoloogiaprotsessi tööoperatsioone.

37
Programmeeritavate kontrollerite korral kasutatakse robotsüsteemi seadmete ning
tehnoloogiaprotsessi loogiliseks juhtimiseks ettenähtud keeli, millel on suhteliselt lihtne
struktuur ja väike käsustik. Sageli kasutatakse nendes keeltes elektriliste releeskeemide
sümboolikat.

Roboti ja juhtseadme valik sõltub paljudest asjaoludest. Juhtseadme riist- ja tarkvara tehniline
tase võib olla väga erinev, mille kohta tabel 1.2 annab vaid üldise iseloomustuse. Konkreetse
robotsüsteemi loomisel tuleb teada ka seadme konstruktsiooni, töökindlust,
ekspluatatsioonitingimusi, hinda ja paljusid teisi andmeid, mida tabelis pole.

38
2. PROGRAMMJUHTIMISE ALUSED

2.1. Programmjuhtimise ülesanded

Esimese põlvkonna robotite puhul tuleb juhtida: 1) manipulaatori haaratsi või tööriista
liikumist ning 2) robotsüsteemi seadmete talitlust. Niisugune ülesannete jaotus teeb roboti
juhtimissüsteemi loomise lihtsamaks, eriti kui robot täidab paljudest diskreetsetest
operatsioonidest ning ajalistest etappidest koosnevat tehnoloogiaprotsessi ning kui seadmete
talitluse juhtimine on küllalt keerukas.

Manipulaatori liikumine on pidev või tükati pidev protsess, mille iseloomu määravad ajamid.
Seepärast võib manipulaatori liikumise juhtimist käsitleda ajamite juhtimisena. Iga ajami
juhtimist saab vaadelda kahelt eri tasandilt. Esiteks, liikumise üldjuhtimise eesmärgiks on
soovitud programmliikumise (soovitud olekutrajektoori) süntees. Teiseks, liikumise lokaalne
juhtimine peab selle soovitud liikumise nõutava kvaliteediga realiseerima.

Manipulaatori tööseadise trajektoor moodustatakse üksikute ajamite liikumiste ruumilise


summeerimise tulemusena. Trajektoori täpsust mõjutavad kõikide ajamite juhuslikud
häiringud, nagu toitepinge või koormuse muutumine. Kõik ajamid on manipulaatori lülide
kaudu mehaaniliselt sidestatud, kusjuures kinemaatilise ahela alguses olevaid ajameid
koormavad neile järgnevatele lülidele paigutatud ajamid. Ajamid mõjutavad vastastikku
üksteise tööd. Automaatjuhtimise seisukohast on manipulaator keeruline mitmelisidus
dünaamiline süsteem, mille tööd mõjutavad paljud juhuslikud häiringud. Manipulaatori
liikumise täpsus sõltub juhtimiseks kasutatavast informatsioonist, sellest, kui täpselt
mõõdetakse tööseadise liikumise parameetreid ning mil määral vastab tegelikkusele
juhtimisobjekti, s. o. manipulaatori mudel, mille järgi töötab roboti juhtseade. Kõiki
liikumisparameetreid ja häiringuid täpselt mõõta ning manipulaatori tööd täpselt modelleerida
on väga raske. Seepärast kasutatakse sõltuvalt roboti otstarbest mitmesuguseid lihtsustatud
juhtimismeetodeid.

Dekompositsiooni põhimõtet rakendades saab manipulaatorit vaadelda üksikutest


autonoomsetest lülidest ja nende ajamitest koosneva mehhanismina. Olenevalt sellest, kas
manipulaatorit käsitletakse tervikuna või üksikute mehhanismide ja ajamite kogumina, võib
ajameid juhtida kas kooskõlastatult või sõltumatult.

39
Ajamite sõltumatu juhtimise korral töötab iga ajam oma algoritmi järgi ning nende
vastastikust mõju ei arvestata. Iga ajam on vaadeldav omaette dünaamilise süsteemina, mille
juhtimiseks kasutatakse ajami dünaamilist mudelit. Ajami juhtseadme ülesandeks on
kõrvaldada soovitud ja tegeliku liikumise erinevusest tingitud viga. Juhtimissüsteem toimib
alles siis, kui viga on tekkinud, ning juhtimise seisukohast pole oluline, kuidas kulgeb
liikumine edaspidi. Sel põhimõttel töötab enamik roboti teisaldusmehhanismide ja tööpinkide
ettenihkemehhanismide käitamiseks mõeldud servoajameid. Ajamite sõltumatut juhtimist
kasutatakse positsioonjuhtimisega robotites, mis positsioonivad tööseadist täpselt
programmiga etteantud punktides. Seejuures pole oluline, millist trajektoori mööda liigub
roboti haarats või tööriist ühest punktist teise.

Ajamite kooskõlastatud juhtimise aluseks on manipulaatori kinemaatika- või dünaamika-


mudel. Kinemaatikamudel määrab manipulaatori tööseadise ja kõikide ajamite
liikumisparameetrite vahelised seosed. Dünaamikamudel arvestab lisaks manipulaatori lülidele
ja ajamitele mõjuvaid koormus- ja inertsijõude. Kuna niisuguse mudeli abil saab iga ajami
liikumist ette planeerida, siis nimetatakse juhtimist ka ettevaatavaks juhtimiseks. Ajamite
kooskõlastatud juhtimist läheb tarvis kontuurjuhtimisega robotites, mis järgivad täpselt
programmiga etteantud trajektoori ning juhivad sujuvalt tööseadise kiirust. Oluline on lisada,
et juhtimise lihtsustamise eesmärgil jaotatakse ülesanded kahe eri tasandi vahel. Ajamite
liikumised planeeritakse ja kooskõlastatakse ülemisel tasandil ning realiseeritakse nõutava
kvaliteediga alumisel tasandil. Ajamid on näiliselt sõltumatud ning neid juhitakse nagu tavalisi
servoajameid. Just sellisel põhimõttel töötab enamik nüüdisaegseid kontuurjuhtimisega
roboteid.

Sõltumatu juhtimisega ajameid vaadeldakse roboti juhtimissüsteemi lokaalsete


alamsüsteemidena. Niisuguse süsteemi üldine struktuur on näidatud joonisel 2.1. Iga ajam
käitab ühte manipulaatori lüli. Programmseadme etteantud positsioonimispunkti
asukohasignaali võrreldakse asendiandurilt AA saadud signaaliga. Signaalide erinevuse korral
tekib asendi veasignaal, mis antakse asendiregulaatori AR sisendisse. Asendiregulaatori
väljundsignaal on kiiruse seadesignaaliks. Seda võrreldakse kiirusanduri KA signaaliga.
Positsioonimispunktides muutuvad asendi veasignaal ja kiiruse seadesignaalid nulliks ning
ajam peatub. Kiirusregulaatori KR väljundsignaaliga juhitakse ajami toitemuundurit TM, mille
ülesandeks on toitevõrgust tarbitava energiavoo juhtimine. Selle energiaga käitatakse mootori
M ning reduktori R kaudu manipulaatori lüli.

Kui manipulaatori ajameid juhtitakse sõltumatult, siis eristatakse 1) tsüklilist, 2) pidevat ja 3)


dünaamilist juhtimist. Tsüklilise juhtimise korral positsioonitakse manipulaator lõpplülitite
või piirikute abil. Ajami sujuvaks pidurdamiseks kasutatakse mehaanilisi summuteid.
Juhtimissüsteemis puudub pidev asendi järgi tagasiside. Asendit kontrollitakse ainult
positsioonimispunktis. Positsioonimispunkte on vähe, sest need on määratud
ümberhäälestatavate lõpplülitite ja piirikute arvuga. Süsteemile iseloomulikult liigub
manipulaator tsükliliselt üksikute positsioonimispunktide vahel, millest tuleneb ka
juhtimismooduse nimetus - tsükliline positsioonjuhtimine. Tsükliliseks juhtimiseks pole
vaja luua ajami mudelit ja tunda selle parameetreid. Ajameid juhitakse nagu teisigi
robotsüsteemi kuuluvaid seadmeid diskreetsete loogikasignaalidega.

40
Energia

Juhtseade Muundurid Manipulaatoriajamid

- AR - KR TM M R 1. lüli

KA
Prog- q
1
ramm- AA
seade
q
n
- AR - KR TM M R n. lüli

KA

AA

Joonis 2.1. Robotiajamite sõltumatu juhtimine

Pideva juhtimise korral kasutatakse positsioonimiseks asendiandureid. Ajami kiirus ja


kiirendus määratakse eraldi anduritega või diferentseerides asendisignaali, mis sisuliselt on
ajami oleku hindamine (estimation). Ajami regulaatori parameetrite häälestamisega saab ette
anda sujuva käivitus- ja pidurdusprotsessi ning maksimaalkiiruse. Juhtimisel võetakse aluseks
ajami dünaamikamudel, mille parameetrid loetakse konstantseiks. Asendi- ja
kiiruseregulaatorid valitakse soovitud liikumise kohased. Määravaks võib seejuures olla näiteks
positsioonliikumiseks kuluv aeg või positsioonimise aperioodilisus. Regulaatoritena kasuta-
takse proportsionaalseid, integraalseid, diferentsiaalseid ning kombineeritud toimega
regulaatoreid. Sageli toimivad regulaatorid ka signaalide piirajatena, mis võimaldab ette anda
kiiruse ja kiirenduse piirväärtusi.

Dünaamilise juhtimise korral võetakse peale liikumisparameetrite arvesse ka mootori


koormus. Alalisvoolumootori koormust saab hinnata ankruahela voolusignaaliga, sest mootori
voolu ja pöördemomendi vahel on ligikaudu võrdeline sõltuvus. Teist liiki mootorite korral
tuleb kasutada momendiandureid või hinnata koormust kaudselt mootori mudeli abil
(vektorjuhtimine). Tagasiside voolu või momendi järgi võimaldab vältida mootori
ülekoormamist ning optimeerida ajami tööd energeetiliselt.

Ajamite kooskõlastatud tööd roboti juhtimissüsteemis iseloomustab joonis 2.2. Kõiki


manipulaatori lülisid käitavad reduktorite R kaudu omaette mootorid M, mida toidetakse
muunduritest TM. Manipulaatori lülide asend määratakse asendianduritega AA. Andurite
signaalid määravad ära manipulaatori asendi baaskoordinaadistikus. Sõltuvalt

41
Energia

Juhtseade Muundurid Manipulaatoriajamid


qp
. TM M R 1. lüli
qp
Programm- .. Regulaator
seade qp
...
qp TM M R n. lüli

Soovitud . ..
q q q
liikumine
qn
Tegelik n. AA
Mõõteseade
liikumine
Oleku
hindaja q1
1. AA
Üldistatud
asendikoordinaadid

Joonis 2.2 . Robotiajamite kooskõlastatud juhtimine

manipulaatori ehitusest võivad baaskoordinaadistikeks olla väga erinevad koordinaadistikud.


Üksikute ajamite kiirusi ja kiirendusi mõõdetakse eraldi anduritega või määratakse
asendisignaalide diferentseerimisega.

Programmseadme antud soovitud liikumise asendi-, kiirus- ja kiirendusvektorite signaale


võrreldakse mõõteseadme väljundsignaalidega, mis iseloomustavad manipulaatori tegelikku
liikumist, asendit, kiirust ja kiirendust. Soovitud ja tegeliku liikumise erinevuse korral
moodustab regulaator ajamitele niisuguse juhttoime, mis seda erinevust vähendab. Regulaatori
töö muudab keerukaks asjaolu, et enamikul juhtudel erineb manipulaatori baaskoordinaadistik
roboti tööruumi ristkoordinaadistikust. See tähendab, et andurid mõõdavad manipulaatori
lülide asendit silindrilises, sfäärilises või nurkkoordinaadistikus. Kui lähtuda andurite
signaalidest, siis tuleb tööseadise asendi, kiiruse ja kiirenduse leidmiseks lahendada
manipulaatori kinemaatika otsene ülesanne. Tööseadise ristkoordinaadistikus ette antud
asendist lähtudes tuleb manipulaatori lülide asendi leidmiseks lahendada kinemaatika
pöördülesanne. Roboti juhtimisel lahendatakse mõlemaid ülesandeid automaatselt töö
käigus, nii et selleks kuluv aeg ei takista tööseadise liikumise juhtimist. Seepärast valitakse
piisava töökiirusega juhtseade või kasutatakse roboti juhtimiseks lihtsamaid meetodeid.

Kinemaatikaülesannete automaatseks lahendamiseks tuleb 1) koostada manipulaatori


kinemaatika matemaatiline mudel, 2) luua mudelile vastav arvutiprogramm ning 3) korral-dada
anduritelt ja programmseadmelt saabuva informatsiooni töötlemine ja edastamine.
Kinemaatikaülesande võib lahendada lihtsustatult, määrates kindlaks ainult roboti juhtimiseks

42
vajalikud asendisignaalid ning jättes arvestamata kiirus- ja kiirendusvektorite vahelised seosed.
Loomulikult halvendab see roboti juhtimise kvaliteeti, sest osa informatsiooni jääb kasu-
tamata. Juhtimismoodust ise nimetatakse juhtimiseks asendialgoritmi järgi. Juhul kui
kinemaatikaülesande lahendamisel leitakse ka kiirusvektorid, on tegemist juhtimisega
kiirusalgoritmi järgi.

Kinemaatiliste seoste kaudu saab määrata tööseadise või ajamite liikumisparameetrid. Sellest
ei piisa aga manipulaatori töö täielikuks kirjeldamiseks, sest kinemaatikavõrrandid ei arvesta
manipulaatori lülidele ja ajamitele mõjuvaid jõude. Liikumisel tekkivad jõud ja momendid
leitakse dünaamikavõrranditest. Roboti juhtimisel kasutatakse manipulaatori dünaamikat
modelleerivat programmi, mida nimetatakse manipulaatori dünaamika-mudeliks.

Dünaamikaülesanded jagunevad otsesteks ja pöördülesanneteks. Otsese


dünaamikaülesande puhul määratakse mootorite momentide järgi manipulaatori liikumis-
parameetrid. Vastupidist ülesannet, kus tööseadise soovitud liikumisparameetrite järgi tuleb
määrata mootorite pöördemomendid, nimetatakse dünaamika pöördülesandeks.
Juhtimismoodust, mis põhineb manipulaatori dünaamikamudelil, nimetatakse juhtimiseks
dünaamikamudeli järgi. Keerukuse tõttu pole niisugused algoritmid robotite
programmjuhtimisel laiemat rakendust leidnud.

Manipulaatori kinemaatika ja dünaamika pöördülesanded pole alati üheselt lahendatavad,


põhjuseks manipulaatori manööverdatavus, mis tähendab, et tööseadise soovitud asendile
vastab mitu manipulaatorilülide asendit. Niisuguse pöördülesande lahendamiseks tuleb
kehtestada lisatingimused, mis muudavad ülesande üheselt lahendatavaks.

2.2 Asendivektorid ja nende teisendamine

Punkti asukoht ristkoordinaadistikus {A} on kirjeldatav vektoriga A P (joonis 2.3), mis on


määratud selle projektsiooniga telgedele x, y, z:

 px 
A
P =  p y . (2.1)
 p z 

Keha orientatsioon ehk suunistus ruumis ristkoordinaadistikus {A} määratakse kolme


ühikvektoriga x B , y B , zB . Need vektorid on üksteisega risti ning moodustavad vastava
ristkoordinaadistiku {B}. Seega on keha suunistuse muutumine kirjeldatav ühe
ristkoordinaadistiku pööramisega teise ristkoordinaadistiku suhtes. Ühikvektor x B on
kirjeldatav oma kolme projektsiooniga koordinaadistiku {A} telgedel x, y, z. Samuti on
kirjeldatavad ka ühikvektorid y B ja z B .

43
{ A} z
p
z
A
P
o

y
p
y
px
x

Joonis 2.3. Punkti asendivektor ristkoordinaadistikus

 X xB   X yB   X zB 
     
A
X B =  Y x B . A
YB =  Y y B . A
Z B =  Y z B . (2.2)
 Z xB   Z yB   Z zB 
     

Vektorid A x B , A y B , Az B moodustavad rotatsioonimaatriksi BAR, mis näitab koordinaadistiku


{B} suunistust koordinaadistiku {A} suhtes.

 X xB X
yB X
zB 
Y
B R =  xB
A Y
yB Y 
zB  = [ A
X B, A
YB , A
ZB . ] (2.3)
 Z xB Z
yB Z
z B 

Koordinaadistiku ehk teljestiku {B} asend teljestiku {A} suhtes (joon. 2.4) määratakse
selle teljestiku alguspunkti asendivektoriga A PBO ning rotatsioonimaatriksiga BAR:

{B} = {BA R, APBO }. (2.4)

B
Lükatud teljestikus {B} esitatud asendivektorit P (joon. 2.5) kirjeldatakse koordi-
naadistikus {A} kahe vektori summana

A
P= BP+ APBO . (2.5)

Pööratud teljestikus {B} esitatud asendivektorit B P kirjeldatakse koordinaadistikus {A}


rotatsioonimaatriksi BAR abil, kusjuures asendivektor A P leitakse rotatsioonimaatriksi BAR ja
asendivektori B P korrutamisega:

44
{A } z {A } z
A A
xB
{B }
{B }
zB
0
y
B zB
AP
BO xB yy
B
yA xy y
A
B
.
xA zy
B yB
x
A

Joonis 2.4. Haaratsi või tööriista suunistuse määramine ning teljestiku pööramine

{Β } z
o
B
{Α } z A P
P

0 y

x
AP
BO

Joonis 2.5. Asendivektori teisendamine lükatud teljestikus

A
P= BAR ⋅ B P. (2.6)

Rotatsioonimaatriks võimaldab ka vastupidist teisendust, s.t. määrata teljestiku {A} suunistus


teljestiku {B} suhtes. Seda kirjeldab rotatsioonimaatriks ABR . Lineaaralgebra kursusest on
teada, et ortonormaalsete veergudega maatriksi ehk ortogonaalmaatriksi pöördmaatriks võrdub
transponeeritud maatriksiga:

B −1 B T A −1 A T
B R= AR = AR ; A R= B R = B R .
A B
(2.7)

45
Ortonormaalne süsteem on ortogonaalne ristuvate elementidega süsteem, mille elemendi
norm on 1. Transponeeritud maatriks AT leitakse maatriksi ridade asendamisel veergudega.
Pöördmaatriks A-1 arvutatakse üldjuhul valemiga:

1
A−1 = ( A ji ), (2.8)
det A

kus Aji on adjungeeritud maatriks. Tänu rotatsioonimaatriksi ortonormaalsusele saab selle


pöördmaatriksi leida lihtsamalt, s.o. maatriksi transponeerimisega.

Maatriksi ja tema pöördmaatriksi korrutamisel saadakse ühikmaatriks, mille peadiagonaal


koosneb ühikelementidest ehk ühtedest.

Valemi 2.6 kasutamiseks tuleb rakendada maatriksite korrutamise valemit:

n
cik = ∑ (aij ⋅ b jk ). (2.9)
j =1

Antud juhul on maatriks aij rotatsioonimaatriks, bjk võrdub asendivektoriga BP ning


korrutiseks cik on asendivektor AP ( i = 1...3; j = 1...3; k = 1).

Asendivektori üldistatud teisendamiseks, s.o. lükatud ja pööratud teljestikus {B} antud


vektori BP kirjeldamiseks koordinaadistikus {A}, kasutatakse valemit:

A
P= BAR ⋅ B P+ APBO . (2.10)

Valemi 2.10 saab esitada ka kujul:

A
P= ABT ⋅B P , (2.11)

kus ABT on koordinaadistiku {B} teisendusmaatriks (homogeneous transform).

Koordinaadistiku {B} teisendusmaatriks saadakse 3x3-rotatsioonimaatriksi ja 3x1-


teljestiku alguspunkti asendivektori ühendamisel. Valemi 2.11 saab esitada kujul:

     
 AP  A
R A
PBO   B P
 = B
⋅ . (2.12)
 _  _ _ _ _  _
     
 1  0 0 0 1  1

Viimase rea [0 0 0 1] lisamine teisendusmaatriksile ning 1 lisamine asendivektoritele on


matemaatiline manipulatsioon, mille tulemusena saadakse 4x4-ruutmaatriks ja 4x1-
asendivektor.

46
Teisendusmaatriks võimaldab kompaktselt kirjeldada asendivektorite teisendamise
protseduuri, mis on väga oluline keeruka kinemaatilise ahelaga manipulaatorite matemaatilisel
kirjeldamisel. Eespool leitud seoseid kasutatakse nii vektorite kirjeldamiseks erinevates
koordinaadistikes kui ka nende asendi muutmiseks, s.o. translatsiooni- ja
rotatsioonioperaatoritena:

1 0 0 qX 
0 1 0 qY 
TRANS (Q, Q ) =  , (2.13)
0 0 1 qZ 
 
0 0 0 1

kus Q on ühiksuund ja Q vektori pikkus.

cos Θ − sin Θ 0 0
 sin Θ cos Θ 0 0
ROT (Z , Θ) =  , (2.14)
 0 0 1 0
 
 0 0 0 1

kus Z tähistab pööramist ümber z-telje ja Θ pöördenurka. Translatsiooni- ja


rotatsioonioperaatorite ühendamisel saadakse koordinaatide teisendusoperaatotor.

Mitu järjestikust koordinaatide teisendust võib ühendada liitteisenduseks ning leida sellele
vastava teisendusoperaatori:

B
P= BCT ⋅C P; A
P= ABT ⋅B P ,
millest
A
P= ABT ⋅BCT ⋅C P. (2.15)

Liitteisenduse maatriks
 
 A B A
R PCO + PBO 
B A
 B RCR
A
T = B
. (2.16)
C
_ _ _ _ 
 
0 0 0 1 
Pöördeteisenduse maatriksi BAT võib esitada kujul:

 
 A
R T
− R ⋅ POB 
A T A
 A −1
AT = AT = BT .
B B B B
ehk (2.17)
_ _ _ _ 
 
0 0 0 1 

47
Teisendusmaatriks BAT pole ortonormaalne (ristuvatest ühikvektoritest koosnev) ning järelikult
ei võrdu tema pöördmaatriks transponeeritud maatriksiga.

Koordinaadistike teisendusvõrrandite lahendamine võimaldab tuntud teisenduste abil


määrata mõne tundmatu teisenduse. Näiteks kui

DT = AT ⋅D T DT = BT ⋅CT ⋅DT ,
E E A E E B C
ja
siis
AT ⋅ DT = BT ⋅CT ⋅DT ,
E A E B C

millest
E −1 E A C −1
CT = BT ⋅ AT ⋅DT ⋅DT .
B
(2.18)

Euleri nurgad. Keha suunistust saab peale rotatsioonimaatriksi määrata ka kolme sõltumatu
nurga abil. Rotatsioonimaatriksi 9 elementi on üksteisest sõltuvad. Nende kohta kehtib 6
tingimust, sh. 3 ühikvektori pikkuse kohta:
X = 1; Y = 1; Z =1 (2.19)
ja 3 nende ortogonaalsuse kohta:
X ⋅ Y = 0; X ⋅ Z = 0; Y ⋅ Z = 0. (2.20)

Järelikul võib teljestiku pööramist iseloomustada kolme sõltumatu muutujaga. Enamikul


juhtudel kasutatakse selleks kolme nurka (joon. 2.6). Nendeks on pöörde- (roll), kallutus-
(pitch) ja lengerdusnurk (yaw). Pöördenurka mõõdetakse yz-tasandil teljestiku pööramisel x-
telje ümber, kallutusnurka xz-tasandil teljestiku pööramisel y-telje ümber ja lengerdusnurka
xy-tasandil teljestiku pööramisel z-telje ümber. Vastavalt sellele, mis telje ümber
pööramine toimub, nimetatakse nurki α, β, γ ka Euleri Z-, Y-, X-nurkadeks.

ROLL PITCH YAW


zA zA zA

z zB zB
B
y α
B yB
yA yB yA yA
γ
β
x
B xB
x xB
A xA xA

PÖÖRE KALLUTUS LENGERDUS

Joonis 2.6. Manipulaatori tööseadise suunistuse pöörde-, kallutus- ja lengerdusnurk

48
Teljestiku üldistatud rotatsioonimaatriksi saab tuletada ka üksikute rotatsioonioperaatorite
kaudu:

B R ( γ , β, α ) = ROT ( AZ B , α ) ⋅ ROT ( AYB , β) ⋅ ROT ( AX B , γ ),


A
(2.21)

kus
cα − sα 0
ROT ( Z B , α ) =  sα cα 0;
A

 0 0 1
 cβ 0 sβ 
ROT ( YB , β ) =  0
A
1 0 ;
 − sβ 0 cβ 
1 0 0 
ROT ( X B ,γ ) = 0 cγ − sγ .
A 
0 sγ cγ 

Kõigis nendes maatriksites on siinus- ja koosinusfunktsioonide tähistamiseks kasutatud vaid


esitähti s ja c.

Üldistatud kujul esitatakse rotatsioonimaatriks nurkade γ, β ja α abil järgmiselt:

cα ⋅ cβ cα ⋅ sβ ⋅ sγ − sα ⋅ cγ cα ⋅ sβ ⋅ cγ − sα ⋅ sγ 
A
B R (γ , β ,α ) = sα ⋅ cβ sα ⋅ sβ ⋅ sγ + cα ⋅ cγ sα ⋅ sβ ⋅ cγ − cα ⋅ sγ . (2.22)
 − sβ cβ ⋅ sγ cβ ⋅ cγ 

Sageli tuleb lahendada pöördülesanne, s.t. määrata pöörde-, kallutus- ja lengerdusnurgad


rotatsioonimaatriksi elementide kaudu.

Kui tähistada
 r11 r12 r13 
A
B R = r21 r22 r23  (2.23)
r31 r32 r33 

ning võrrelda avaldisi 2.22 ning 2.23, saab leida teljestiku pööramise nurgad:

γ = A tan 2( r32 , r33 ),


β tan 2( r31, r 2 21 ), (2.24)
α = A tan 2 ( r21 , r11 ),

kus Atan2(rij

49
Pööramine üldistatud telje ümber
esitatakse pööramisena ümber üldistatud telje. Sel juhul kirjeldab teljestiku pööramist
üldistatud telje ühikvektor ning üks pöördenurk Θ. Üldistatud telje suunda kirjeldab vektor
K:
A = [k , k
y z] . (2.25)

Rotatsioonioperaator on sel juhul avaldatav kujul:

 k x k xυθ + cθ k x k yυθ − k z sθ k x k zυθ + k y sθ 


 
ROT ( A K ,θ ) = k x k yυθ + k z sθ k y k yυθ + cθ k y k zυθ − k x sθ  , (2.26)
k x k zυθ − k y sθ k y k zυθ + k x sθ k z k zυθ + cθ 

T
kus cθ = cosθ , sθ = sin θ , υθ = 1 − cos θ ja AK = k x , k y , k z .

Valemi 2.26 abil saab lahendada ka pöördteisenduse ülesande ning leida etteantud
rotatsioonimaatriksi korral üldistatud telje AK ning pöördenurga Θ.

Kui
 r11 r12 r13 
A
B R = r21 r22 r23 ,
r31 r32 r33 
siis
 r + r + r −1
θ = A cos 11 22 33  (2.27)
 2 
ning
 r32 − r23 
1 
K=  r13 − r31 . (2.28)
2 sin θ
 r21 − r12 

Eespool leitud üldistatud telg AK ja pöördenurk θ kirjeldavad sama asendivektori teisendust


mis rotatsioonimaatriks BAR . Täpselt sama tulemuse annab ka telje − AK ja nurga -θ
kasutamine. Kui nurk θ läheneb nullile, siis võrrand 2.28 arvutusteks ei sobi, sest sel juhul
läheneb murru nimetaja nullile ning arvutuste viga suureneb järsult.

50
2.3. Kiirusvektorite teisendamine

Kulgliikumise kiirusvektorit ehk asendivektori muutumise kiirust saab käsitleda asendipunkti


kiirusena. Nagu iga vektor on ka punkti kiirusvektor kirjeldatav erinevates koordinaadistikes.
Näiteks saab koordinaadistikus {B} määratud punkti kiirusvektorit BVP kirjeldada
koordinaadistikus {A} järgmiselt:

A
A B
( V )=
P
dB 
 P , (2.29)
 dt 

kus BP on asendivektor koordinaadistikus {B}. Üldjuhul sõltub punkti kiirusvektor kahest


koordinaadistikust: koordinaadistikust, mille suhtes on määratud punkti asendivektor, ning
koordinaadistikust, mille suhtes vaadeldakse tema liikumist, s. t. leitakse asendivektori tuletis
ajas. Vektori diferentseerimiseks samas koordinaadistikus kasutatakse valemit:

P(t + ∆t )− B P(t )
( V )=
B
B B dB
B
VP = P = lim . (2.30)
∆t
P
dt ∆t →0

Vektori diferentseerimiseks mõnes teises paigalseisvas koordinaadistikus korrutatakse


koordinaadistike rotatsioonimaatriksit samas koordinaadistikus leitud kiirusvektoriga

A B
( V )=
P
A
B R⋅ B VP = BA R ⋅
dB
dt
P. (2.31)

Sageli vaadeldakse kiirusvektorit mingis teises koordinaadistikus {C}, mis liigub mingi
üldisema keskkonnakoordinaadistiku {U} suhtes kiirusega vC =U VC 0 , kus UVC 0 on
koordinaadistiku {C} alguspunkti kiirusvektor koordinaadistiku {U} suhtes. Summaarne
kiirusvektor leitakse vektorite liitmisega

U
VP =U VC0+ CVP . (2.32)

Nurkkiiruse vektorit võib vaadelda jäiga keha liikumist iseloomustava suurusena erinevalt
joonkiiruse vektorist, mis tähistab punkti liikumist. Nurkkiiruse vektori sümbol on Ω.
Koordinaadistiku {B} pöörlemist koordinaadistiku {A} suhtes iseloomustab nurkkiiruse
vektor AΩ B , mis on füüsiliselt koordinaadistiku {B} pöörlemistelg koordinaadistikus {A
}, kusjuures vektori pikkus näitab nurkkiiruse suurust (joon. 2.7).

51
a) b) A

B
{A}
A {B}

B
Ω∆ t
∆P
P(t +∆ t)
θ P(t)

Joonis 2.7. Teljestiku {B} pöörlemine teljestiku {A} suhtes nurkkiirusega A


Ω B (a)
ja punkti kiirusvektor pöördliikumisel (b)

Nurkkiiruse vektorit saab kujutada erinevates koordinaadistikes nagu joonkiiruse vektoritki.


Näiteks on A C
( )
Ω B koordinaadistiku {B} nurkkiirus koordinaadistiku {A} suhtes
vaadelduna koordinaadistikus {C}.

Jäiga keha kiirusvektorite teisendamiseks kasutatakse järgmisi seoseid:

1) kulgliikumisel
A
VP = AVB0 + BA R ⋅ AVP ; (2.33)

2) pöördliikumisel
A
VP = ( V )+
A B
P
A
ΩB×AP ehk VP = BAR ⋅ B VP + A Ω B × BAR ⋅ B P;
A
(2.34)

3) üheaegsel kulg- ja pöördliikumisel


A
VP = AVB0+ BAR ⋅B VP + A Ω B × BAR ⋅B P. (2.35)

Eespool toodud valemeid kasutatakse roboti manipulaatori lülide kulg- ja pöördliikumise


kiiruste arvutamiseks. Oluline on märkida, et mitmelülilise manipulaatori korral lülide kiirused
liituvad.

Mitmedimensiooniliste suuruste tuletiste korral kasutatakse nende kirjeldamiseks jakobiaane.


Jakobiaan ehk Jacobi determinant on üldjuhul n muutuja funktsioonide f1, f2 , ... , f n
osatuletistest moodustatud determinant.

52
Olgu antud funktsioonid:
y1 = f1 ( x1 , x 2 , x 3 , x 4 , x5 , x6 );
y 2 = f 2 ( x1 , x2 , x3 , x 4 , x5 , x 6 );
y 3 = f 3 ( x1 , x2 , x3 , x 4 , x5 , x6 );
(2.36)
y 4 = f 4 ( x1 , x2 , x3 , x 4 , x5 , x 6 );
y 5 = f 5 ( x1 , x 2 , x 3 , x 4 , x5 , x6 );
y 6 = f 6 ( x1 , x 2 , x3 , x 4 , x 5 , x6 ).

Neid funktsioone saab esitada vektorvõrrandiga:


Y = F ( X ). (2.37)
Juhul kui on vaja leida funktsioonide yi diferentsiaalid funktsioonina xj, kirjutatakse välja
avaldis:

∂f1 ∂f ∂f
δy1 = δx1 + 1 δx2 +... + 1 δx6 ;
∂x1 ∂x2 ∂x6
∂f ∂f ∂f
δy2 = 2 δx1 + 2 δx2 + ... + 2 δx6 ;
∂x1 ∂x2 ∂ x6 (2.38)
...
∂f 6 ∂f ∂f
δy6 = δx1 + 6 δx2 + ... + 6 δx6 .
∂x1 ∂x2 ∂ x6

Võrrandisüsteemi võib esitada vektorkujul:


∂F
δY = δX ehk δY = J ( X ) ⋅ δX , (2.39)
∂X
kus J(X) tähistab jakobiaani:
Y& = J ( X ) ⋅ X& . (2.40)
Robotitehnikas kasutatakse jakobiaane manipulaatori lülide kiiruste taandamiseks ühest
koordinaadistikust teise. Niisuguse ülesande näiteks on lülide nurkkiiruste taandamine
keskkonna ristkoordinaadistiku joonkiiruseks:
v = J (Θ ) ⋅ Θ
&. (2.41)
Jakobiaani väärtus sõltub lülide asendist, jakobiaani ridade arv manipulaatori liikuvusastmete
arvust. Üldjuhul, kui robotil on 6 liikuvusastet, kirjeldab roboti kiirusvektorit 6x6-jakobiaan.
Kiirusvektorid Θ ehk Ω ning V on 6x1-vektorid, kusjuures viimane koosneb omakorda 3x1
joonkiiruse vektorist ja 3x1 pöördliikumise nurkkiiruse vektorist.

Kahelülilise liigendkäe (joon. 2.8) kiirusvektorite teisendamisest annab ülevaate järgmine


näide. Manipulaatori haarats on seotud liikuva koordinaadistikuga x3y3. Kõigepealt tuleb
leida kiirusvektor 3. koordinaadistikus, seejärel teisendada see paigalseisva alusega seotud 0.
koordinaadistikku.

53
Järjestikuliste lülide korral leitakse summaarne nurkkiirus valemiga:

i +1
ωi +1= i +1i R ⋅i ω i + Θ
& ⋅i+1Z ,
i +1 i +1 (2.42)
kus
i +1
 0 
Θ& ⋅ Z =  0 
i +1
i +1 i +1  
& 
Θ i +1 

on nurkkiirus ümber Zi+1-telje ehk omanurkkiirus. Järelikult leitakse kinemaatilise ahela


järgmise lüli nurkkiirus eelmise lüli taandatud nurkkiiruse ja omanurkkiiruse summeerimisega.
Järgmise lüli joonkiirus leitakse valemiga:

i +1
( )
vi +1 = i +i1R⋅i v i + i +i1R ⋅ i ω i × i Pi +1 . (2.43)

x3
y3

L2
x
2
Θ2
y2

y
y1 0
x1
L1
Θ1
x0

Joonis 2.8. Kahelüliline liigendkäega planaarmanipulaator

Ülesande lahendamiseks tuleb koostada üksikute lülide teisendusmaatriksid ning seejärel leida
lülide kiirused:

c1 − s1 0 0 c 2 − s2 0 L1  1 0 0 L2 
s c1 0 0 s c2 0 0  0 1 0 0 
0
T =  1 ; 1
T =  2 ; 2
T =  .
1
0 0 1 0
2
0 0 1 0
3
0 0 1 0
     
0 0 0 1 0 0 0 1 0 0 0 1

54
Kiiruste leidmiseks kasutatakse valemeid (2.42) ja (2.43).

0 0
1
ω 1 =  0 ; 1
v1 = 0; (2.44)
Θ& 
1
0
 0   c2 s2 0  0   L1 s 2Θ & 1
 & 
2
ω 2 =  0 ; 2
v 2 = − s 2 c 2 0 L1Θ & = Lc Θ
1  1 2 1 ; (2.45)
Θ& +Θ
1
& 
2
 0 0 1  0   0 
 L1s 2Θ&1 
3
ω 3= 2 ω 2 ; 3  & +L Θ
v 3 =  L1c 2Θ 1 2 (
& +Θ
1 )
& .
2  (2.46)
 0 
 

Nende kiiruste taandamiseks paigalseisvasse koordinaadistikku kasutatakse


rotatsioonimaatrikseid:
c12 − s12 0
 c12 0,
3 R =1 R⋅ 2 R⋅ 3 R = s12
0 0 1 2
(2.47)
 0 0 1
kus
c12 = c1c2 − s1s2 ja s12 = s1c2 + c1s2 .

Rotatsioonimaatriksi ja omakiiruse korrutamisel saadakse kiirusvektor paigalseisvas 0.


koordinaadistikus:
− L1 s1Θ (
& 1 − L2 s12 Θ& 1 +Θ&2  )
0 
v3 =  L1c1Θ& +Lc Θ
1 (
2 12
& +Θ
1 )
& .
2  (2.48)
 0 
 

Valemite (2.46) ja (2.48) põhjal leitakse 3. ja 0. koordinaadistikes esitatud jakobiaanid:


 L1 s2 0 − L1 s1 − L2 s12 − L2 s12 
3
J (Θ ) =   ja 0 J (Θ) = 
L2 c12 
. (2.49)
 L1c 2 + L2 L2   L1c1 + L2 c12

Kiirusvektorite ja jõu- ning momendivektorite teisendamine erineb asendivektorite


teisendamisest, kuna sel juhul pole vektori rakenduspunkt alati oluline. Tegemist on
vabavektoritega (free vector), mis säilitavad oma suuruse ning suuna sõltumata
rakenduspunktist. Kuna koordinaadistiku alguspunkti asendivektor pole siis oluline, saab
momenti teisendada rotatsioonimaatriksi abil:
A
N = BAR ⋅ B N . (2.50)
Teljestiku pööramine ei mõjuta kiirusvektori suurust ja suunda, kuid muudab vektori
kirjeldust. Vektorite teisendamine kuulub lineaaralgebra uurimisvaldkonda ning sellega
tutvutakse lähemalt vastavas kursuses. Siin esitatud valemid aitavad aga paremini mõista
robotite juhtimisega seotud matemaatilisi probleeme.

55
2.4. Manipulaatori kinemaatikamudel

Kinemaatika otsene ja pöördülesanne lahendatakse manipulaatori kinemaatikamudeli abil.


Niisugune mudel tuleb koostada ning kinemaatikaülesanne lahendada eelkõige roboti
analüütiliseks programmeerimiseks. Juhul kui robotit programmeeritakse õpetamise teel, juhib
operaator roboti tööseadist mööda programmeeritavat, s. o. soovitud trajektoori ning näitab
robotile kätte kõik positsioonimispunktid. Õpetamise käigus mõõdavad asendiandurid
manipulaatorilülide suhtelist asendit üldistatud koordinaatides ning kõik asendisignaalid
salvestatakse roboti juhtseadme mällu. Seepärast võib väita, et õpetamise korral lahendatakse
kinemaatika pöördülesanne katseliselt, s. t. otsese mõõtmise teel. Ühtlasi on see oma
põhimõttelt kõige lihtsam pöördülesande lahendamise viis. Õpetamise puuduseks on vähene
paindlikkus, suur tööjõu- ja ajakulu ning asjaolu, et robot ei saa trajektoori vabalt valida.
Seepärast kasutatakse õpetamist peamiselt lihtsa juhtimissüsteemiga robotites. Täiuslikemates
robotites rakendatakse õpetamist koos analüütilise programmeerimisega. Mõlemad
programmeerimisviisid täiendavad teineteist ning laiendavad roboti kasutusvaldkonda.

Analüütilise programmeerimise korral antakse roboti tööseadise või teisaldatava eseme


trajektoor ette keskkonna baaskoordinaadistikus koordinaatide x, y z ja Euleri nurkade o, a, t
abil. Roboti juhtseade määrab kinemaatika pöördülesande lahendamisega trajektoori ja
positsioonimispunktid manipulaatori üldistatud koordinaatides qi. Vastavaid signaale
kasutatakse trajektoori etteandmiseks manipulaatori ajamitele.

Manipulaatori kinemaatiline ahel koosneb järjestikku ühendatud lülidest. Seepärast


kirjeldatakse manipulaatori kinemaatikamudeli koostamisel kõigepealt üksikuid lülisid ning
nendevahelisi ühendusi (kinemaatilisi paare). Tavaliselt seotakse iga manipulaatorilüli oma
koordinaadistikuga, mille telgede suunistusest ning alguspunkti asukohast sõltub suurel
määral, kui lihtne või keeruline on manipulaatori kinemaatikamudeli koostamine tervikuna.
Formuleerigem mõned üldised seisukohad, mis lõpptulemusena lihtsustavad (ühtlustavad)
kinemaatikamudeli koostamist (vt. joon. 2.9).

Pöörleva lüli i-1 pikkus (link length) on tema kahe pöörlemistelje i ja i-1 vaheline kaugus,
mida tähistatakse tähega ai-1.

Lüli väändenurk (link twist) iseloomustab olukorda, kus pöörlemisteljed i ja i-1 pole
paralleelsed. Lüli väändenurka αi-1 môôdetakse pöörlemistelgede projektsioonide vahel
tasandil, mille normaalid on risti môlema pöörlemisteljega. Tavaliselt on pöörlemisteljed
paralleelsed vôi risti ning väändenurk α = 0, α = 90° vôi α = -90°.

56
si

i-1
θi

a i-1

α i-1

Joonis 2.9. Manipulaatorilüli parameetrite määramine

Kahte järjestikulist lüli ühendaval kinemaatilisel paaril on telg, mille suhtes môlemad lülid
liiguvad. Lülide tsentrid vôivad olla nihutatud piki telge. Lüli nihkeks (line offset)
nimetatakse lülide tsentrite vahelist kaugust Si, mida môôdetakse piki nende ühist
pöörlemistelge .

Lüli pöördenurgaks (joint angle Θi) nimetatakse lüli suhtelist pöördenurka ümber
kinemaatilise paari telje, mida môôdetakse naaberlülide pikitelgede vahel.

Manipulaatori kinemaatiline ahel algab tema paigalseisva ning keskkonna koordi-


naadistikuga (world cartesian space) seotud alusega ning lõpeb haaratsi vôi tööriistaga.
Viimastega seotud koordinaadistikku nimetatakse tööriista koordinaadistikuks (actuator
space). Peale selle võib iga manipulaatori lülidega siduda teisi koordinaadistikke, mida
nimetatakse lülide koordinaadistikeks (joint space). Manipulaatori tööd kirjeldatakse kõigis
loetletud kolme liiki koordinaadistikes.

Pärast seda, kui manipulaatori kõigi lülide ja kinemaatiliste paaride jaoks on määratud 4
eespool loetletud parameetrit, s.o. lüli pikkus, väändenurk, lülide nihe ning suhteline
pöördenurk kinemaatilise paari telje ümber, on otstarbekas koondada need parameetrid
tabelisse. Joonise 2.10 kinemaatilise ahela parameetrid on koondatud tabelisse 2.1.

Tabel 2.1
i αi-1 ai-1 Si Θi
1 0 0 0 Θ1
2 90o 0 S2 0

57
3 0 0 L2 Θ3

58
z1
x1 x2 y3
x3
z2
z3
y1
S2 L2 Θ3

Θ1

Joonis 2.10. Manipulaatorilülide koordinaadistikud ning parameetrid

Mehhanismide kinemaatika defineerimist tabelis 2.1 esitatud parameetrite abil nimetatakse


Denavit-Hartenbergi esitusviisiks (Denavit-Hartenberg notation).

Keerulise paljudest lülidest koosneva kinemaatilise ahela korral teisendatakse koordinaate järk-
järgult, alates etteantud lülist (tavaliselt haaratsist või tööriistast) kuni paigalseisva aluseni, s. t.
roboti baaskoordinaadistikuni. Kui mingi punkti asend i. koordinaadistikus on määratud
raadiusvektoriga Pi , siis i-1. koordinaadistikus võib selle punkti raadiusvektori Pi-1 arvutada
valemiga:

Pi −1= i−1iT ⋅ Pi , (2.51)

kus i −1iT on koordinaatide teisendusmaatriks, mida kirjanduses nimetatakse ka Denavit-


Hartenbergi maatriksiks ja mis on ette nähtud koordinaatide üldistatud teisendamiseks. Üht
koordinaadistikku saab ühildada teise koordinaadistikuga kahe translatsioonioperaatori
TRANS ning kahe rotatsioonioperaatori ROT rakendamisega. Sisuliselt tähendab see, et
üldistatud teisaldamine on võimalik nelja elementaarteisalduse abil. Näiteks võib kirjutada
i −1
iT = ROT ( X i , α i −1 ) TRANS ( X i , ai−1 ) ROT ( Zi , Θi )TRANS ( Zi , di ), (2.52)
mille põhjal leitakse teisaldusmaatriks

 cΘi − sΘ i 0 ai −1 
 sΘ ⋅ cα cΘ i ⋅ cα i −1 − sα i −1 − sα i −1 ⋅ d i 
i −1  i i −1
iT = . (2.53)
 sΘ i ⋅ sα i −1 cΘ i ⋅ sα i −1 cα i −1 cα i −1 ⋅ d i 
 
 0 0 0 1 

Maatriksis tähistab nurk Θ pöörlemist ümber Z-telje ja α pöörlemist ümber X-telje. a


tähistab X-telje suunalist ja d Z-telje suunalist nihet.

59
Mitmelülilise manipulaatori kinemaatika kirjeldamiseks tuleb leida igale lülile sobiv
koordinaadistik nii, et selle alguspunkt asuks lüli alguses oleva kinemaatilise paari teljel.
Joonisel 2.11 ja 2.12 on näidatud roboti PUMA 560 manipulaatori kinemaatikaskeem koos
üksikute lülide koordinaadistikega. Selguse huvides on otstarbekas vaadelda seda näidet
lähemalt ning tuletada koordinaadistike teisendusmaatriksid.

z
2
x2

y z1
2
z3
y1

x3
x1
d3
a2
y
3

y4 x4

z4

Joonis 2.11. Roboti PUMA 560 lülide 1...3 koordinaadistikud

x3 d4 x4

z4
a3
y
3
x x
6 5

z y
6 5

Joonis 2.12. Roboti PUMA 560 lülide 4...6 koordinaadistikud

60
Roboti PUMA 560 manipulaatori kinemaatilised parameetrid on koondatud tabelisse 2.2.
Tabeli järgi võib välja kirjutada kõikide lülide teisendusmaatriksid. Summaarne
teisendusmaatriks 06T leitakse üksikute lülide teisendusmaatriksite korrutamisega, kusjuures
korrutamist on otstarbekas teha kahes etapis. Esiteks leitakse osakorrutised 46T ja 13T ning
seejärel 06T .

Tabel 2.2

i αi-1 ai-1 di Θ
1 0 0 0 Θ1
2 -90o 0 0 Θ2
3 0 a2 d3 Θ3
4 -90o a3 d4 Θ4
5 90o 0 0 Θ5
6 -90o 0 0 Θ6

cΘ1 − sΘ1 0 0  cΘ 2 − sΘ 2 0 0
 sΘ cΘ1 0 0  0 0 1 0
0
T =  1 , 1
T =  ,
1
 0 0 1 0
2
 − sΘ 2 − cΘ 2 0 0
   
 0 0 0 1  0 0 0 1

cΘ 3 − sΘ 3 0 a2   cΘ 4 − sΘ 4 0 a3 
 sΘ cΘ 3 0 0   0 0 1 d 4 
 3 3 
3T =
2
, 4T , (2.54)
 0 0 1 d3 − sΘ 4 − cΘ 4 0 0
   
 0 0 0 1  0 0 0 1

cΘ 5 − sΘ 5 0 0  cΘ 6 − sΘ 6 0 0
 0 0 − 1 0  0 0 1 0
 
5T = 6T =
4 5
, ,
 sΘ 5 cΘ 5 0 0  − sΘ 6 − cΘ 6 0 0
   
 0 0 0 1  0 0 0 1

c5 c 6 − c5 s6 − s5 0
 s c6 0 0
6T = 5T ⋅ 6 T =
4 4 5  6 , (2.55)
 s5 c 6 − s5 s6 c5 0
 
 0 0 0 1

61
 c4 c 5c 6 − s 4 s 6 − c 4 c5 s6 − s 4 c6 − c 4 s5 a3 
 s 5c 6 − s5 s6 c5 d 4 
3
T = 3
T ⋅ 4
T =  . (2.56)
6 4 6
 − s4 c 5 c 6 − c 4 s 6 s 4c 5 s 6 − c 4c 6 s 4 s5 0
 
 0 0 0 1

 c 23 − s 23 0 a 2 c2 
 0 0 1 d 3 
3T = 2T ⋅ 3 T =
1 1 2  , (2.57)
− s 23 − c 23 0 − a2 s 2 
 
 0 0 0 1 

kus c23 = c2c3 − s2 s3 ja s23 = c2 s3 + s2c3.


Seepärast
 1r11 1
r12 1
r13 1
pX 
1 1 1 1 
 r21 r22 r23 pY 
6T = 3T ⋅ 6 T = 1
1 1 3
, (2.58)
 r31 1
r32 1
r33 1
pZ 
 
 0 0 0 1 

kus 1
r11 = c23 c4c5c6 − s4 s6 − s23s5c6 ,
1
r21 = − s4 c5c6 − c4 s6 ,
1
r31 = − s23 c4c5c6 − s4 s6 − c23s5c6 ,
1
r12 = − c23 c4c5s6 + s4c6 + s23 s5s6 ,
1
r22 = s4c5s6 − c4c6 ,
1
r32 = s23 c4c5s6 + s4c6 + c23s5s6 ,
1
r13 = −c23c4 s5 − s23c5 ,
1
r23 = s4 s5 ,
1
r33 = s23c4 s5 − c23c5 ,
1
p X = a2c2 + a3c23 − d 4 s23 ,
1
pY = d 3 ,
1
pZ = − a3s23 − a2 s2 − d 4c23 .

Summaarne teisendusmaatriks leitakse siin kõigi kuue lüli teisendusmaatriksite korru-


tisena [3]:

6T = 1T ⋅6T .
0 0 1

Manipulaatori korral, mil on nii kulg- kui ka pöördliikumisega lülid, kasutatakse üldistatud
koordinaate. Sõltuvalt sellest kas on tegemist pöörd- või kulgliikumisega, määratakse
üldistatud koordinaat qi nurga- või pikkusühikutes:

62
qi = σ i ⋅ Θi + (1 − σ i ) ⋅ Si , (2.59)

kus pöördliikumise korral σi = 1, kulgliikumisel aga σi = 0.

Kulg- ja pöördliikumisega manipulaatori kinemaatikaskeem ning selle lülide


koordinaadistikud on joonisel 2.13. Manipulaatori lülid 1, 3, 5 ja 6 on pöördliikumisega, lülid
2 ja 4 kulgliikumisega. Järelikult võib valemi 2.59 põhjal kirjutada, et qi = Si, kui i = 2 ja i
= 4. Esimese ja kuuenda lüli koordinaadistike alguspunkt asub eelmise lüli kinemaatilise paari
teljel (z-teljel) ning on nihutatud eelmise koordinaadistiku alguspunkti suhtes konstantsele
kaugusele d1 = S1 ja d6 = S6. Teljestikevaheline kaugus S3 = S5 = 0, sest kolmanda ja viienda
lüli pöörlemistsentrid asuvad vastavate koordinaadistike alguspunktides. Teine lüli on esimese
suhtes pööratud konstantse nurga võrra. Seepärast
Θ2 = const. Nurk Θ4 = 0, kuna 4. koordinaadistiku alguspunkt paikneb eelmise
koordinaadistiku z-teljel ning lüli 4 on kulgliikumisega. Teisendusmaatriksi (2.52) parameetrid
on joonise 2.13 kinemaatikaskeemi alusel toodud tabelis 2.3.

Tabel 2.3
i αi-1 ai-1 di=Si Θi
1 90o 0 S1 Θ1
2 0 0 S2 Θ2
3 90o a3 0 Θ3
4 -90o 0 S4 0
5 90o 0 0 Θ5
6 0 0 S6 Θ6

x3
S4 x 4; x 5
y
2
y
6
y3 z3 Θ6
z x z5
2 2 S2 z4
y Θ3 z6
1
Θ5

z x
1 1 z
0

y0

x Θ1
0

63
Joonis 2.13. Kulg- ja pöördliikumistega manipulaatori kinemaatikaskeem

Asendades teisendusmaatriksi üldvalemis 2.53 näidatud parameetrid eespool leitud


väärtustega ning võttes aluseks joonisel 2.13 toodud kinemaatikaskeemi, võib kirjutada välja
üksikute lülide teisendusmaatriksid:

cΘ1 − sΘ1 0 0  cΘ 2 − sΘ 2 0 0


 0 − 1 0   sΘ 0 
1T =
0  0
, 2T =
1  2 cΘ 2 0 ,
sΘ1 cΘ1 0 d1   0 0 1 S2 
   
 0 0 0 1  0 0 0 1
cΘ3 − sΘ 3 0 a3  1 0 0 0 
 0 0 − 1 0  0 0 1 0 
3T =
2  , 4T =
3  ,
 sΘ 3 cΘ 3 0 0 0 − 1 0 S 4 
   
 0 0 0 1 0 0 0 1 
cΘ 5 − sΘ 5 0 0 cΘ 6 − sΘ 6 0 0
 0 − 1 0  sΘ 0 
5T =
4  0
, 6T =
5  6 cΘ 6 0 .
sΘ 5 cΘ 5 0 0  0 0 1 d6 
   
 0 0 0 1  0 0 0 1

Seisva koordinaadistiku ehk manipulaatori alusega seotud koordinaadistiku suhtes leitud


raadiusvektor arvutatakse haaratsi või tööseadise raadiusvektori P6 ja kõigi
teisendusmaatriksite korrutisena
P0= 01T ( q1)⋅21T ( q2 )⋅23T ( q3 )⋅43T ( q4 )⋅45T ( q5 )⋅56T ( q6 ) ⋅ P6 . (2.60)

Üldjuhul kirjutatakse sama avaldis kujul:


n
P0 = Pi Π i −1iT ( qi ), (2.61)
i =1
kus n on lülide arv manipulaatori kinemaatilises ahelas. Teisendusmaatriksite korrutist
n
i −1
iT = Π Ti ( qi ) (2.62)
i =1
nimetatakse i. lüli teisendusmaatriksiks. Summarne teisendusmaatriks
n−1
nT = 1T ( q1 )⋅2T ( q2 )... nT ( qn )
0 0 1
(2.63)
iseloomustab manipulaatori tööseadise (haaratsi) asukohta ja suunistust:
a x bx c x O x 
a b c O 
 x y
nT =
0 y y
. (2.64)
a z bz c z O z 
 
0 0 0 1 

Teisendusmaatriksi 0nT tulbad määravad haaratsi telgede xn, yn, zn suuna ja koordinaadistiku
alguspunkti On asukoha (joon. 2.14) ristkoordinaadistikus.

64
zo
O'
nz x
n

O
n
y
n

z
n
O'ny
O
y
o

O'
nx
xo O'n

Joonis 2.14. Roboti haaratsi koordinaadistik

Kinemaatika otsese ülesande lahendamisel on teada asendivektorid Pi ja kõik


teisendusmaatriksid ning leidma peab Po. Pöördülesande korral on teada Po, leida tuleb
manipulaatori üldistatud koordinaatide qi väärtused. Kuigi pöördülesanne pole üheselt
lahendatav, õnnestub seda paljudel juhtudel siiski teha. Selleks kehtestatakse teatud
kinemaatilised lisatingimused: kas mõne üksiku või kõigi lülide liikumisulatuse piirangud,
teatud lülide omavaheline suhteline asend või selle asendi muutumise piirid. Lisatingimustega
kaotatakse kinemaatika pöördülesande määramatus ning leitakse teisaldatava eseme soovitud
asendile vastav manipulaatorilülide suhteline asend. Et kinemaatika pöördülesannet pole
ilmutatud kujul alati võimalik otse lahendada või on see seotud suurte raskustega, siis
kasutatakse ka kaudset teed. Lähtutakse seosest:
∆P = Pn (qn ) − PS , (2.65)
kus ∆P on roboti tööriista või haaratsi asendivektori Pn(qn) ja soovitud asendivektori Ps
vahevektori pikkus.
Roboti juhtimine taandub selle vahe kõrvaldamisele. ∆P minimeerimiseks on olemas mitmed
optimeerimisalgoritmid. Nendeks on
1) gradientmeetod,
2) kiirema languse,
3) Newtoni,
4) koordinaatlanguse ja
5) juhusliku otsingu meetodid.
Gradientmeetodi korral muudetakse manipulaatorilülide asendit nii, et viga väheneks kõige
kiiremini. Vea kiireima vähenemise suunda näitab vea gradient. Järelikult peab roboti
juhtseade vea kiiremaks vähendamiseks arvutama pidevalt vea gradienti, mis leitakse kõigi
koordinaatide järgi arvutatud vea osatuletiste kaudu (joon. 2.15).

65
y

3 1

2 o

0 x

Joonis 2.15. Vahefunktsiooni minimeerimise meetodid tasapinnal:


1 - gradientmeetod, 2- kiireima languse meetod,
3 - koordinaatlanguse ehk Gauss-Seydeli meetod

Mõnevõrra lihtsam on viga kõrvaldada kiireima languse ja koordinaatlanguse meetodi järgi.


Kiireima languse meetodi korral määratakse gradient liikumise algul ning jätkatakse
samasuunalist liikumist seni, kuni viga enam ei vähene. Siis arvutatakse uus gradient.
Koordinaatlanguse meetodi järgi vähendatakse viga tsükliliselt üksikute koordinaatide kaupa,
kuni viga lõpuks täielikult kõrvaldatakse.

Kinemaatika otsese ja pöördülesande lahendamise meetodid on üks osa robotite juhtimise


tarkvarast. Eespool vaadeldud võrrandeid võib käsitleda kui asendialgoritme, sest roboti
juhtimisel on nende võrrandite peamine eesmärk kõrvaldada asendiviga.

Peale asendi tuleb jälgida ja juhtida ka manipulaatori lülide kiirust. Lülide kiiruse arvutamiseks
kasutatakse koordinaatide teisendusmaatriksite tuletisi Ti'. Teisendusmaatriksi
'
diferentseerimisel leitakse Ti järgmine avaldis:
k '
iT = Ki⋅kiT ( qi' ), (2.66)
kus diferentseerimist iseloomustab maatriks Ki. Pöördliikumise korral
0 − 1 0 0
1 0 0 0
Ki =   (2.67)
0 0 0 0
 
0 0 0 0
ja kulgliikumise korral
0 0 0 0
0 0 0 0
Ki =  . (2.68)
0 0 0 1
 
0 0 0 0

66
Kulgliikumise kiiruse võib i. koordinaadistikus leida avaldisest
i
vi = ∑ (U i j ⋅ Pi ) ⋅ q 'j , (2.69)
j =1
kus
∂ Γi i
Ui = = ∏ Tj' , (2.70)
∂ q j j =1
kus 1≤ j ≤ i ja i = 1, 2, 3, ... , n.

Pöördliikumise kiirus ωi
ω i = ∑ (Γ j ⋅ K j ) ⋅ q j ,
i
(2.71)
j =1

kus
Γn = T1 ( q1 ) ⋅ T2 (q2 ) ⋅ T3 ( q3 )⋅...⋅Ti (qi ) ⋅ Tn ( qn ). (2.72)

Kj valitakse lüli liikumise iseloomu järgi avaldisest 2.67 või 2.68. Analoogiliselt saab leida ka
kõigi lülide kiirendused.

Asendi- ja kiirusalgoritmide ühiseks puuduseks on, et need arvestavad ainult manipulaatori


kinemaatikat ja eiravad roboti juhtimisel täielikult dünaamilisi piiranguid, mis kehtivad nii
manipulaatori mehhanismide kui ka ajamite töö kohta. Samal ajal on hädavajalik arvestada
dünaamilisi piiranguid, et tagada programmliikumiste teostatavus. Kui roboti liikumise
juhtimisel võetakse aluseks täielikud dünaamikavõrrandid, siis on regulaatori struktuur
adekvaatne roboti dünaamikamudeliga. Niisuguste regulaatoritega realiseeritavaid
juhtimisseadusi nimetatakse dünaamilisteks. Dünaamikaülesande lahendamine tagab nii
programmliikumise stabiilsuse ja kvaliteedi kui ka trajektoori täpse järgimise ning täpse
positsioonimise. Nii kasutatakse ära süsteemis sisalduv potentsiaalne ja kineetiline energia
ning tagatakse energeetiliselt optimaalne liikumine. Kuna täielikke dünaamikamudeleid on
juhtimisel väga keerukas kasutada, siis piirdutakse enamasti lihtsustatud mudelitega, mis
arvestavad konkreetsete ajamite dünaamilisi omadusi.

67
2.5. Roboti liikumise üldjuhtimine

Roboti liikumise üldjuhtimise eesmärgiks on moodustada ajamite soovitud liikumisele


vastavad seadesignaalid. Liikumise üldjuhtimisest annab ülevaate järgmine näide, milles
vaadeldakse horisontaalse liigendkäega robotit, mida kirjanduses nimetatakse ka SCARA-
tüüpi robotiks. Horisontaalse liigendkäe kinemaatikaskeem on joonisel 2.16. Selle liikumist
kirjeldavad suhteliselt lihtsad võrrandid ning kinemaatika otsene ja pöördülesanne on
ilmutatud kujul lahendatavad. Roboti tööseadise asendit tähistab punkt A, mille asukoha saab
määrata nii ristkoordinaadistikus Oxyz kui ka silindrilises nurkkoordinaadistikus Oϕψz.

za r1

r
2

oA

ya y

ϕ
ψ
xa
x

Joonis 2.16. Horisontaalse liigendkäe kinemaatikaskeem

Roboti üldjuhtimisel antakse programmiga ette liikumise sihtpunkti ehk positsioonimispunkti


koordinaadid, trajektoori soovitav kuju ning liikumise iseloom ehk kiirusdiagramm.
Tööseadise viimiseks algasendist lõppasendisse lahendab juhtseade järgmised osaülesanded:

1) määrab andurite signaalide järgi käelülide tegeliku asendi (ϕa, ψ a, za);


2) arvutab suuruste ϕa, ψ a, za järgi tööseadise asendi ristkoordinaadistikus xa, ya, za,
s. t. lahendab manipulaatori kinemaatika otsese ülesande;

68
3) planeerib trajektoori ning liikumisdiagrammi. Sirgjoonelise liikumise korral määrab
juhtseade trajektoori sihi, sellel liikumise suuna ning ajalise seaduspärasuse;
4) leiab tööseadise soovitud liikumise jaoks jooksvate asendite projektsioonid ristkoordi-
naadistikus xe, ye, ze, vajaduse korral määrab ka kiirusvektori projektsioonid;
5) määrab soovitud liikumise jaoks vajalikud käelülide asendid ϕe, ψ e, ze ning väljastab
need ajamitele seadesignaalidena, s. t. lahendab manipulaatori kinemaatika
pöördülesande;
6) kordab eespool loetletud tegevusi kuni positsioonimispunkti jõudmiseni ning
seejärel peatab liikumise.

Roboti juhtimisalgoritmi plokkskeem on joonisel 2.17.

ALGUS

Liikumiskäsu ja sihtasendi koordinaatide


x 2 , y2 , z 2 etteandmine

Tegeliku asendi mõõtmine roboti baas-


ϕ ,ψ,z
a a a koordinaadistikus

Kinemaatika otsese ülesande lahendamine


xa , ya , z a ja tegeliku asendi määramine ristkoordi-
naadistikus

Trajektoori planeerimine ja soovitud


x e , ye , z e programmliikumise etteandmine rist-
koordinaadistikus

Kinemaatika pöördülesande lahendamine


ϕ ,ψ ,z ja seadesuuruste arvutamine
e e e

ϕ , ψe , z e Seadesuuruste väljastamine ajamitele


e

(Ae=A t )? Positsioonimispunkti asukoha kontroll

LÕPP

Joonis 2.17. Roboti üldjuhtimise algoritm

69
Manipulaatori kinemaatika otsene ülesanne lahendatakse järgmise võrrandisüsteemi abil:

xa = r1 cos ϕ + r2 sin( ϕ + ψ );
ya = r1 sin ϕ − r2 cos( ϕ + ψ ); (2.73)
za = za .

Võrrandid (2.73) võimaldavad lahendada ka kinemaatika pöördülesande, kuid arvestatagu, et


nurkade ϕ ja ψ avaldamine sealt on tülikas. Seepärast on kinemaatika pöördülesanne
otstarbekas lahendada lähtudes joonisel 2.18 toodud geomeetrilisest konstruktsioonist, mille
põhjal kirjutatakse välja järgmised matemaatilised seosed:

r = xe2 + ye2 ;
c = ( r 2 + r12 − r22 ) / ( 2r );
h = r12 − c 2 ;
r = c + d;
ϕ 1 = arctg( y e / x e ), kui xe > 0;
ϕ 1 = π 2, kui xe = 0; (2.74)
ϕ 1 = π + arctg( y e xe ), kui xe < 0;
ϕ 2 = arctg(h c ),
ϕ e = ϕ 1 + ϕ 2;
ψ e = arctg(d h ) − ϕ 2 ;
ze = ze .

r2 Ae
ye
ψe
d
r1 h
ϕ2
c
ϕ1
ϕ
e
0 xe x

Joonis 2.18. Nurkade ϕe ja ψ e leidmine tööseadise soovitud asendi Ae (xe, ye) korral

70
Kinemaatika pöördülesanne lahendatakse ja leitakse ajamite seadesignaalid ϕe, ψ e, ja ze.
Lahendamise eeldusena peab teadma soovitud liikumist ristkoordinaadistikus ehk tööseadise
asendi koordinaate xe, ye, ze. Trajektoori planeerimist alustatakse liikumise alg- ja lõppasendi
koordinaatide võrdlemisest ning liikumissuuna määramisest. Sirgjoonelise liikumise korral
määratakse positsioonimispunktide vaheline kaugus. Ristkoordinaadistikus arvutatakse
punktide A1 ja A2 vaheline kaugus (joon. 2.19) valemiga:

L12 = ( x2 − x1 ) 2 + ( y2 − y1 ) 2 + ( z2 − z1 ) 2 , (2.75)

kus x1, y1, z1 on algasendi ja x2, y2, z2 lõppasendi koordinaadid. Tööseadise poolt läbitud tee
võrdub sirgjoonelise liikumise korral tööseadise lõppasendi kaugusega algasendist ehk

L= ( xe − x1 ) 2 + ( ye − y1 ) 2 + ( ze − z1 ) 2 , (2.76)

kus xe, ye, ze on tööseadise soovitud (etteantud) asendi koordinaadid.

A
o 2
L 12

A1 o

-x O x

Joonis 2.19. Liigendkäe asendid sirgjoonelisel liikumisel punktist A1 punkti A2

Trajektoori siht ja liikumissuund koordinaadistikus Oxyz määratakse järgmiste teguritega:

k yx = ( y2 − y1 ) / ( x2 − x1 ) = 1 / k xy ;
k zx = ( z2 − z1 ) / ( x2 − x1 ) = 1 / k xz ;
k xy = ( x2 − x1 ) / ( y2 − y1 ) = 1 / k yx ; (2.77)
k zy = ( z2 − z1 ) / ( y2 − y1 ) = 1 / k yz ;
k xz = ( x2 − x1 ) / ( z2 − z1 ) = 1 / k zx ;
k yz = ( y2 − y1) / ( z2 − z1 ) = 1 / k zy .

71
Algasendi koordinaatide, läbikäidud tee ja liikumissuuna järgi arvutatakse tööseadise soovitud
asendi koordinaadid:
1
xe = x1 + L ⋅ sign( dx ) 2
;
(1 + k yx + k zx2 )
1
ye = y1 + L ⋅ sign( dy ) 2 2
; (2.78)
( k xy + 1 + k zy )

1
ze = z1 + L ⋅ sign( dz) ,
( k xz2 2
+ k yz + 1)

kus L on läbitud tee, x1, y1, z1 - algasendi koordinaadid ja dx, dy, dz - siirde diferentsiaalid
manipulaatori tööseadise liikumisel. Läbitud tee ning kiiruse sõltuvust ajast nimetatakse
liikumisdiagrammiks. Seepärast võib kirjutada:

L = X (t ) ja dL / dt = dX / dt = V ( t ). (2.79)

Roboti liikumist planeeriv programmeerija valib eri kujuga diagrammide vahel. Kolmnurkne
kiirusdiagramm tagab maksimaalse toimekiiruse, trapetsdiagramm energiasäästlikkuse ning
siinusdiagramm sujuvuse. Trajektoori läbimise aeg oleneb kiirusdiagrammi kujust.
Kolmnurkdiagrammi korral arvutatakse see valemiga:

tL = 2 ⋅ L12 / amax , (2.80)

kus amax on maksimaalne kiirendus. Kui kiirendus- ja pidurdusaja kestused on palju


väiksemad püsikiirusel liikumise ajast, siis on tegemist trapetsdiagrammiga ja

tL = L12 / Vmax , (2.81)

kus Vmax on maksimaalne kiirus, mis antud juhul on ka püsikiirus. Siinuselise


kiirusdiagrammi korral arvutatakse etteantud siirde L12 läbimiseks kulunud ajavahemik
valemiga:
t L = (π / 2 ) ⋅ L12 / a max . (2.82)

Soovitud liikumisdiagrammi kirjeldamiseks avaldatakse läbitud tee aja funktsioonina.


Kolmnurkdiagrammi korral on selleks järgmine funktsioon:

X (t ) = amax ⋅ t 2 / 2, kui t < t L / 2;


X ( t ) = ( amax / 4 ) ⋅ [ t L2 − 2( t − t L ) 2 ], kui t > tL / 2. (2.83)

Kiiruse siinusdiagrammil (joon. 2.20) antakse läbitud tee ette funktsiooniga:

L12
X ( t ) = L12 − 1 + cos( π ⋅ t / t L ) . (2.84)
2

72
X( t )
V(t)
L=X( t )

V( t )
L 12

0 t

Joonis 2.20. Siinuseline liikumisdiagramm

Selleks et juhtida valitud seaduspärasuse järgi roboti liikumist, lahendatakse võrrandid (2.78),
asendades neis läbitud tee pikkuse L funktsiooniga X(t), mis on määratud avaldistega (2.83) ja
(2.84). Seejärel tuleb lahendada manipulaatori kinemaatika pöördülesanne ning leida ajamite
seadesuurused ϕe, ψe ja ze.

Trajektoori planeerimisülesannet on üldkujul otstarbekas lahendada lähenduspolünoomide


abil. Seda vôib teha nii manipulaatorilülide nurkkoordinaadistikus kui ka ristkoordinaadistikus.
Liikumine algpunktist Θ0 lõpp-punkti Θf võib toimuda mööda erinevaid trajektoore (joon.
2.21), mida saab esitada polünoomina.

Θ(t)

Θ
f

Θo

0 t=tf t

Joonis 2.21. Algpunktist lõpp-punkti liikumise trajektoore

73
Positsioonjuhtimisel kehtivad järgmised piirangud:

Θ ( 0) = Θ 0 ; Θ (t f )= Θ f ; Θ& ( 0) = 0; Θ& ( t f ) = 0. (2.85)


Neid piiranguid rahuldab vähemalt kolmandat järku polünoom:

Θ (t ) = a0 + a1t + a2t 2 + a3t 3 , (2.86)


mille järgi leitakse kiiruse ja kiirenduse avaldised:
Θ& ( t ) = a1 + 2a2t + 3a3t 2 , (2.87)
&& ( t ) =
Θ 2 a2 + 6a3t . (2.88)
Kui viia piirangud (2.85) võrranditesse (2.86), (2.87) ja (2.88), saab avaldada seosed tegurite
a0...a3 leidmiseks:
Θ0 = a0 ;
2 3
Θ f = a0 + a1t f + a2t f + a3t f ; (2.89)
0= a1;
0= a1 + 2a2t f + 3a3t 2f .

Võrrandisüsteemi (2.89) lahendamisel leitakse ai avaldised:


3 2
a0 = Θ 0; a1 = 0; a2 = (Θ f − Θ 0 ); a3 = − 3 ( Θ f − Θ 0 ). (2.90)
t 2f tf
Kuuppolünoomiga kirjeldatud trajektoori korral kujuneb kiirusdiagrammiks ruutparabool ning
kiirendusdiagrammiks sirge (joon. 2.22).

Kontuurjuhtimisel vaadeldakse üldjuhul liikumist kahe rajapunkti vahel, eeldades, et kiirus


neis punktides ei võrdu nulliga, s.t.
Θ& ( 0) = Θ& 0 ja Θ& ( t f ) = Θ& f . (2.91)

Sel juhul kirjeldavad liikumist võrrandid:

Θ0 = a0 ;
Θ f = a0 + a1t f + a2t 2f + a3t 3f ; (2.92)
Θ& 0 = a1;
Θ& f = a1 + 2a2t f + 3a3t 2f ,
millest
a0 = Θ 0; a1 = Θ& 0 ;
3 2 & 1 &
a2 = (Θ f − Θ 0) − Θ0− Θ f; (2.93)
t 2f tf tf
2 1
a3 = − 3 (Θ f − Θ 0 ) + 2 (Θ& f − Θ& 0 ).
tf tf

74
x
Asend

0,5

0
t
Kiirus
.
x

0
t
..
x Kiirendus
+

0 t t
f

Joonis 2.22. Kuuppolünoomiga kirjeldatud trajektoor

Kui kontuurjuhtimise soovitud trajektoor on antud teatud rajapunktide reana Θi(t), saab seda
trajektoori planeerida kuuppolünoomide abil. Niisugust tükiti polünomiaalset funktsiooni
nimetatakse splainiks (spline). Kiirust vôib rajapunktides määrata kolmel viisil:

1) kiiruse annab ette kasutaja;


2) kiirus valitakse automaatselt mingite heuristiliste reeglite järgi ning
3) kiirus valitakse automaatselt, eeldades, et kiirendus rajapunktides on pidev.

Kiiruse automaatseks määramiseks rajapunktides tuleb leida suhteliselt lihtsad ning arvutis
kergesti rakendatavad reeglid. Näiteks on loogiline lugeda kiirus teekonna märgi muutumisel
nulliks. Kuna trajektoori tõusunurga tangens võrdub kiiruse hetkväärtusega, vôib rajapunktis
arvutada näiteks trajektoori lõikude tõusunurgaga tangensite keskväärtuse ning omistada selle
väärtus rajapunkti kiirusele. Muidugi saab välja mõelda ka teisi rajapunkti kiiruse automaatse
määramise heuristilisi reegleid.

75
Kõige enam huvi pakub kolmas kiiruse määramise viis, mis tagab kiirenduse pidevuse ning ka
tükiti polünomaalse funktsiooni diferentseeritavuse rajapunktis.

Θ (t)
2

Θ (t)
1 v

to tv t
t t f2
f1

Joonis 2.23. Trajektoorilõikude ühendamine pideva kiirenduse korral

Kui on antud kaks trajektoori lõiku, mida kirjeldavad kuuppolünoomid

Θ 1 (t ) = a10 + a11t + a12 t 2 + a13t 3


2 3
ja Θ 2 ( t ) = a20 + a21t + a22 t + a23t (2.94)

ning soovitakse neid ühendada mingis punktis v nii, et kiirendus seal oleks pidev, siis võib
välja kirjutada järgmised võrrandid:

Θ0 = a10 , sest t 1 = 0;
2 3
Θ v = a10 + a11t f 1 + a12 t f 1 + a13t f 1 , sest t 1 = tf1;
Θ v = a20 , sest kui t = tv, siis t 2 = 0; (2.95)
2 3
Θ v = a20 + a21t f 2 + a22 t f 2 + a23t f 2 , sest t 2 = tf2;

0 = a11 , sest Θ& 1 ( 0) = 0;


0 = a + 2a t + 3a t 2 ,
21 22 f 2 23 f 2 sest Θ& ( t ) = 0.
2 f2

Kiirenduse pidevust tagavad tingimused on

a21 = a11 + 2a12 t f 1 + 3a13t 2f 1;


2a22 = 2 a12 + 6a13t f 1. (2.96)

Kui lahendada võrrandid (2.95) tingimusi (2.96) arvestades, siis leitakse kuuppolünoomide
tegurid, mille korral on rajapunktis tagatud kiirenduse pidevus. Kui t f = tf1 = tf2, siis on
trajektoori punktid määratud võrdsete ajaintervallide järel:

76
a10 = Θ 0 ;
a11 = 0;
12Θ v − 3Θ f − 9Θ 0
a12 = ;
4t 2f
− 8Θ v + 3Θ f + 5Θ 0
a13 = ; (2.97)
4t 3f
a20 = Θ v;
3Θ f − 3Θ 0
a21 = ;
4t f
− 12Θ v + 6Θ f + 6Θ 0
a22 = ;
4t 2f
8Θ v − 5Θ f − 3Θ 0
a23 = .
4 t 3f

Trajektoori sujuvuse suurendamiseks antakse lisaks kiirusele mõnikord ette ka rajapunkti


kiirendus, võimalik et ka tõuge. Sel juhul tuleb suurendada trajektoori lõike kirjeldavate
polünoomide järku ning vôtta kuuppolünoomide asemel kasutusele viiendat vôi kuuendat
järku polünoomid.

Trajektoori võib planeerida ka nii, et see määratletakse lineaarsete funktsioonide lõikudega,


mida ühendavad paraboolsed sillad. Ka siis saadakse trajektoori tükiti polünomiaalne kirjeldus
ehk splain, kuid see splain on esitatud maksimaalselt lihtsustatud kujul (joon. 2.24).

Θ
f
1. splain

2. splain
Lineaarne trajektoor
Θ
h

Θo
to tb tc th t f -tc t f - t b tf t

Joonis 2.24. Trajektoori kirjeldamine lineaarsete lõikude ja neid ühendavate ruutparaboolidega

77
Sirgjoonelisele trajektoorile vastab ristkülikukujuline kiirusdiagramm, mis eeldab lõpmatu
suurt kiirendust käivitamisel ning aeglustust positsioonimisel ja on teoreetiliselt võimatu.
Praktikas on sellele lähedane väga aeglane ühtlase kiirusega liikumine. Kahe ruutparabooli
ühendamisel saadud trajektoor vastab kolmnurksele kiirendusdiagrammile, mis tagab
etteantud kiirenduse (ka jõudude ja momentide) korral maksimaalse toimekiiruse. Kõik
vahepealsed trajektoorid vastavad trapetsikujulisele kiirusdiagrammile. Kiirusdiagramm on
igal juhul keskpunkti Θh, th suhtes sümmeetriline.

Kuna trajektoori paraboolsele osale ja lineaarsele osale vastavad kiirused peavad


ühenduspunktis olema vôrdsed, vôib kirjutada

&& t = Θh − Θb
Θ b , (2.98)
t h − tb
kus
1 && 2
Θb = Θ0+ Θ tb . (2.99)
2

Arvestades, et t f = 2th , saab leida järgmise võrrandi:

&& t − Θ&& t t + ( Θ − Θ ) =
Θ
2
0, (2.100)
f b f 0
kus tf on liikumise soovitud kestus ja tb käivitusaeg. Teades kiirendust ja käivitusaega leitakse
t = [Θ&& t 2 + ( Θ − Θ )] / Θ
&& t . (2.101)
f b f 0 b

&& ja liikumiskestuse t korral saab leida käivitusaja tb:


Etteantud kiirenduse Θ f
&&
Θ
2 2
tf − 4Θ&& ( Θ
tf f − Θ 0)
tb = − . (2.102)
2 2Θ&&

Etteantud liikumiskestuse korral aga minimaalse vajaliku kiirenduse

&& ≥ 4( Θ f − Θ 0)
Θ . (2.103)
t 2f

Võrratusmärk avaldises näitab, et väiksema kiirenduse puhul ei saa etteantud aja vältel liikuda
algpunktist lõpp-punkt.

Kui tükiti lineaarseid funktsioone tahetakse ühendada ruutparaboolsete sildadega nii, et


trajektooriks kujuneks pidev funktsioon (joon. 2.25 ), tekib olukord, kus tegelik trajektoor ei
läbi etteantud punkte Θi, Θj, Θk. Sõltuvalt lubatud kiirendusest võib valida väga erinevaid
paraboolseid ühendussildu. Mida suurem on kiirendus, seda lähemal on tegelik trajektoor
etteantud punktile.

78
Θ
k

Θ
j

Θ
i

ti tj tk t

Joonis 2.25. Trajektoori planeerimine rajapunktide vahel

Kui manipulaatori tööseadis peab täpselt läbima rajapunkti Oi ilma seal peatumata, tuleb
trajektoor planeerida lisatingimustega. Selleks võetakse etteantud rajapunkti lähedal
automaatselt kasutusele kaks pseudo-rajapunkti, üks ühel, teine teisel pool etteantud punkti
(joon. 2.26 ). Tulemusena möödub tegelik trajektoor pseudo-rajapunktidest ja läbib täpselt
etteantud punkti.

Pseudo-
rajapunktid

o o o

Tegelik
rajapunkt

Joonis 2.26. Pseudo-rajapunktide kasutamine trajektoori planeerimisel

Sirgjoonelise liikumise planeerimiseks ristkoordinaadistikus tuleb lahendada roboti


kinemaatikaülesanded, s. t. leida manipulaatori kõikide lülide teisendusmaatriksid ning nende
korrutis. Lihtsamatel juhtudel lahendatakse ülesanne geomeetrilisi avaldisi kasutades, nagu
seda tehti SCARA-manipulaatori näite korral.

79
y

A
o 2

A o
1

-x O x

Joonis 2.27. Praktiliselt mitterealiseeritava poosi muutus liigendkäe sirgjoonelisel liikumisel

Roboti juhtimisel arvestatakse, et tööseadis liigub ühest punktist teise liigendkäe lülide kahe
erisuguse asetuse korral. Ühel juhul paikneb lülisid ühendav liigend vasakul pool sirget OA =
r, teisel juhul aga sirgest paremal. Seepärast valitakse liikumise planeerimisel kõigepealt
käeliigendi sobiv asend ehk poos. Paljud robotid töötavad teatud tööruumis ainult kindla
poosiga. Liikumise ajal ei lubata poosi tavaliselt vahetada, sest sellega katkeb liikumise sujuvus
(joon. 2.27). Seepärast peab roboti juhtimise algoritm välistama poosi muutmise liikumise ajal.
Enne liikumise alustamist kontrollitakse, kas trajektoor on läbitav ilma poosi vahetamata.

80
2.6. Lokaalne juhtimine

Lokaalne juhtimine realiseerib kõrgema juhtimistasandi poolt sünteesitud programmliikumise.


Programmseade annab ette roboti tööseadise soovitud trajektoori Xp(t) ning vajaduse korral ka
kiirusvektori Vp(t). Tegelik trajektoor X(t) ja kiirus V(t) olenevad sellest, kuidas roboti ajameid
juhitakse ning millised häiringud mõjutavad nende tööd. Roboti normaalseks tööks on vaja, et
tegelik liikumine oleks stabiilne ning vastaks teatud kvaliteedinõuetele, mis tähendab, et tegelik
liikumine ei tohi oluliselt erineda soovitud liikumisest.

Stabiilsus iseloomustab liikumist dünaamilistes režiimides, s. o. seade- ja


häiringusignaalide muutumisel. Protsesse, mille jooksul süsteem läheb ühest väljakujunenud
olekust teise, nimetatakse siirdeprotsessideks. Siirdeprotsessid on nii aperioodilised kui ka
perioodilised. Võnkumiste amplituudid siirdeprotsesside käigus kasvavad või kahanevad.
Programmliikumine on stabiilne, kui juhttoime või häiringute muutumisest põhjustatud
algviga siirdeprotsessi ajal ei ületa teatud etteantud suurust ehk lubatud viga.
Programmliikumine on mittestabiilne, kui tegelik liikumine soovitud liikumisest tõkestamatult
eemaldub, s. t. viga kasvab sõltumata sellest, kui väikesed on esialgsed häiringud. Süsteemi
stabiilsuse üle otsustatakse siirdeprotsesside järgi.

Automaatjuhtimisteoorias kasutatakse süsteemide stabiilsuse määramiseks mitmesuguseid


meetodeid. Enamik neist on mõeldud lineaarsete süsteemide uurimiseks. Manipulaatori
liikumise stabiilsust saab nende meetoditega analüüsida teatud lihtsustuste korral.
Manipulaatori liikumine on stabiilne, kui on stabiilne kõigi tema ajamite liikumine. Seepärast
tuleb uurida manipulaatori üksikute ajamite stabiilsust. Ajami dünaamika uurimiseks
koostatakse ajami mudel. Kuna üldjuhul kirjeldavad manipulaatori ajamite tööd muutuvate
parameetritega mittelineaarsed diferentsiaalvõrrandid, siis on ajamite stabiilsuse uurimine
küllalt keerukas. Selle lihtsustamiseks kontrollitakse stabiilsust lineariseeritud võrrandite järgi
süsteemi parameetrite ja häiringute mitmesuguste väärtuste juures, kus ajami mittestabiilsus
on tõenäoliselt kõige suurem.

Ajami liikumise stabiilsust hinnatakse ka süsteemi faasitrajektoori järgi. Ajami korral näitab
faasitrajektoor kiiruse sõltuvust läbitud teest ehk siirdest (joon. 2.28) ning ajami faasipunkti
(oleku kujutispunkti) liikumist tasandil (v, x) pärast seda, kui süsteem on mingi välise toime
tõttu tasakaalust välja viidud. Väliseks toimeks on näiteks koormuse järsk muutumine või
asendi uus seadesignaal. Ajami faasipunkt läheneb siis uuele etteantud positsioonimispunktile
x = 0, v = 0 kas perioodiliselt (joon. 2.28, a) või aperioodiliselt (joon. 2.28, b). Esimesel juhul
roboti tööseadis positsioonitakse võnkuvate liikumistega, mis paljude tööde korral pole
lubatud. Teisel juhul on ajami siirdeprotsess aperioodiline ning tööseadis läheneb
positsioonimispunktile ainult ühest suunast. Aperioodilise siirdeprotsessi korral on võimalik
asetada esemeid töötsoonis olevate takistuste lähedale, kus võnkumised võivad muidu viia
kokkupõrgeteni. Mõne töö puhul on aga väikese amplituudiga võnkumised

81
positsioonimispunkti ümber isegi kasulikud. Näiteks kui liite paremaks koostamiseks läheb
vaja teatud sobitusliikumisi. Faasitrajektoor on siis nullpunkti ümbritsev ellips, mis osutab, et
positsioonimispunkti ümber toimub pidev konstantse amplituudiga võnkeprotsess (joon.
2.28, c). Ellipsi sees olev trajektoor vastab mittestabiilsele liikumisele, kus faasipunkt eemaldub
positsioonimispunktist. Väljaspool ellipsit olevatel trajektooridel läheneb faasipunkt
positsioonimispunktile. Kõigi kolme faasitrajektoori siirdeprotsessid on joonisel 2.29.

a) v

-x x
b)
v

-x x

c)
v

-x x

Joonis.2.28. Faasitrajektoorid ajami positsioonimisel:


a) sumbuva amplituudiga võnkeprotsess,
b) aperioodiline protsess,
c) püsivõnkumistega protsess

82
a)
X
V x

0
b) t
X
V x

0
c) t
X x
V

0
t

Joonis 2.29. Erinevate faasitrajektooride siirdeprotsesse

Kontuurjuhtimisel liigutakse etteantud kiirusega mööda soovitud trajektoori. Ajamite ülesanne


on järgida trajektoori ja kiirust, mistõttu töörežiimi nimetatakse ka järgivrežiimiks. Ajamite
käivitamisel ja koormuse häiringute korral tekib siirdeprotsess, mille jooksul tegelik trajektoor
ja kiirus eemalduvad soovitud liikumise trajektoorist ja kiirusest. Järgivajami siirdeprotsess
püsikiiruseni käivitamisel on joonisel 2.30. Pärast siirdeprotsessi töötab ajam väljakujunenud
režiimis, kus trajektoori järgimise viga ja kiiruse viga jäävad etteantud piiridesse. Juhtimise
seisukohast on oluline, et siirdeprotsesside kestus ning kiiruse ülereguleerimine oleksid
võimalikult väikesed.

Positsioonjuhtimise korral on peamiseks liikumise kvaliteedi näitajaks positsioonimise täpsus.


Soovitud ja tegeliku positsioonimisasendi erinevust nimetatakse positsioonimisveaks.

83
Liikumise stabiilsuse ja nõutava kvaliteedi saavutamiseks leitakse sobiv juhtimisseadus ning
rakendatakse seda ajami juhtimisel. Selleks vaadeldakse ajamit kui juhtimisobjekti ning
koostatakse tema dünaamikamudel. Ajami mudel sõltub nii manipulaatori ehitusest kui ka
mootori, toitemuunduri ja andurite tööpõhimõtetest. Kõige enam kasutatakse robotites alalis-
voolumootoritega ajameid. Mootoreid toidavad suure toimekiirusega pooljuhtmuundurid, mis
ajami seisukohast on inertsivabad. Sama kehtib ka andurite ja mõõtemuundurite kohta. Ajami
tööd kirjeldab sel juhul järgmine diferentsiaalvõrrandite süsteem:

dIa
U = E + I a ⋅ Ra + La ;
dt
E = km Φ ω ;
Tm = k mΦ I a ;
Ts = f (ω , ϕ ); (2.104)

J = Tm − Ts ;
dt
ω = dϕ / dt ,

kus U on mootori toitepinge, E - vastuelektromotoorjõud, I a - ankruahela vool, Ra -


ankruahela takistus, La - ankruahela induktiivsus, km - mootori ehitust iseloomustav tegur,Φ -
magnetvoog, ω - nurkkiirus, Tm - mootori moment, Ts - koormusmoment, ϕ - läbitud tee
ehk mootori võlli pöördenurk, J - inertsimoment.

Lokaalse juhtimisseaduse sünteesist annab ülevaate lihtne näide. Leida alalisvoolumootori


pinge muutmise seaduspärasus, kui on ette antud soovitud kiiruse muutumine. Mootori
elektromagnetilist inertsi ei arvestata, sest ajami mehaaniline inerts on suur ja ankruahela vool
muutub kiirusega võrreldes hetkeliselt. Ajami liikumist kirjeldab sel juhul võrrand:


J = Tm ω , U ( t ) − Ts ( ω ), (2.105)
dt

kus U(t) on pinge muutumise seaduspärasus. Mootori momendi võib avaldada võrrandiga

T m = pm [U( t ) - E(ω )] , (2.106)

kus pm = km Φ /Ra on mootori koondparameeter.

Kui töötatakse avatud süsteemis, leitakse vajalik pinge muutumise seaduspärasus U(t),
lahendades võrrandid (2.105) ja (2.106).

1  dω 
U (t ) = J + Ts (ω ) + E(ω ). (2.107)
pm  dt 

84
X( t ) ∆ x
V( t )

vt ∆ v
ve

xe
xt

0 t

Joonis 2.30. Ajami siirdeprotsess püsikiiruseni käivitamisel

Konstantse soovitud kiirenduse dω / dt = a ja koormusmomendi T s korral on võrrand 2.107


hõlpsasti lahendatav ning mootori pinget tuleb muuta lineaarse seaduspärasuse järgi:

1
U (t ) = ( J ⋅ a + Ts ) + k mΦ a ⋅ t . (2.108)
pm

Suletud süsteemis töötamisel juhitakse pinget sõltuvalt etteantud ja tegeliku kiiruse vahest:

U ( t ) = f ( ω e − ω t ). (2.109)

Funktsioon U(t) määrab ajamis kasutatava regulaatori omadused. Kasutatakse


proportsionaalseid ehk P-regulaatoreid, kus U(t) muutub võrdeliselt veasignaaliga,
integraalseid ehk I-regulaatoreid, kus U(t) sõltub vea integraalist, ning diferentsiaalseid ehk D-
regulaatoreid, kus U(t) on vea tuletise funktsioon. Kasutamist leiavad ka loetletud regulaatorite
kombinatsioonid: PI-, PD-, PID-regulaatorid. Konkreetse ajami juhtimisel valitakse regulaator
soovitud siirdeprotsessi kuju järgi. Enamasti loetakse optimaalseks teist järku
diferentsiaalvõrranditega kirjeldatava süsteemi siirdeprotsesse, mis esinevad võnkelise ja
aperioodilise režiimi piiril. Mõnel juhul on kiiruse väike ülereguleerimine lubatud, teisel juhul
aga mitte. Sõltuvalt juhtimisobjektist valitakse tagasisided, regulaatorite struktuur ja
ülekandetegurid selliselt, et suletud süsteem taanduks teist järku diferentsiaalvõrranditega
kirjeldatavaks süsteemiks.

Manipulaatori positsioonjuhtimist võib üldistatud kujul käsitleda järgmiselt. Kui puuduvad


massi liikumist takistavad jõud, kujutab selle liikumist võrrand:

f = m ⋅ &&
x, (2.110)

85
kus x on punktmassi kiirendus ja f sellele toimiv jõud. Punktmassi positsioonjuhtimiseks
kasutatakse lihtsat juhtimisseadust:

f = − kv ⋅ x& + k p ( xs − x ), (2.111)
kus kv ja k p on kiirus- ja asendiregulaatori võimendustegurid, xs - soovitud
positsioonimispunkt, x - punktmassi tegelik asend ning x& selle kiirus. Võrrandite (2.110) ja
(2.111) ühendamisel saadakse punktmassi suletud positsioonjuhtimissüsteemi võrrand:

mx&& = k v x& + k p ( xs − x ). (2.112)

Kui lisaks soovitud asendile xs antakse ette ka soovitud kiirus x&S ja kiirendus x&& s, saadakse
mx&& = ( x&&s − x&&) + k v ( x& s + x& ) + k p ( x s − x ). (2.113)

Ühikmassi m =1 korral

e + k ve& + k p e = 0,
&& (2.114)

kus e = (xs - x) on asendiviga, e& - kiirusviga ja &&


e - kiirendusviga. Diferantsiaalvôrrandi
(2.114) saab esitada operaatorkujul:

s2 + k v s + k p = 0, (2.115)

mille lahenditeks on
kv k v2 − 4 k p kv kv2 − 4 k p
s1 = − + ; s2 = − − . (2.116)
2 2 2 2

f m

..
xs + ..
Σ f=mx
+
+

kp kv
.
. e e
x
s
Σ
xs
Σ

Joonis 2.31. Punktmassi positsioonjuhtimine

86
87
Automaatjuhtimise teooriast on teada, et süsteemi karakteristliku võrrandi (2.115) juured
(2.116) määravad süsteemi stabiilsuse ning siirdeprotsesside omadused. Reaalarvuliste
juurtega süsteemi siirdeprotsess on aperioodiline, kompleksarvuliste juurtega süsteemi
siirdeprotsess aga võnkuv. Juurte avaldistest järeldub, et süsteemil on kriitiline sumbuvus,
juhul kui
k v2 − 4kp = 0.
(2.117)

Punktmassi positsioonjuhtimissüsteem, kui takistusjõud puuduvad, on esitatud joonisel 2.31.


Juhtimisseadustele võib lisada veel ühe liikme, mis on võrdeline asendivea integraaliga. Sel
juhul muudetakse süsteem astaatiliseks, s.t. kôrvaldatakse täielikult staatiline viga,

f = &x&s + k v e& + k p e + k i ∫ e ⋅ dt. (2.118)

Võrrand (2.118) vastab üldtuntud PID-regulaatori juhtimisseadusele.


Üldjuhul mõjutavad punktmassi liikumist mitmesugused jõud, nagu hõõrde-, raskus- ja
elastsusjõud (joon. 2.32). Punktmassi liikumisvõrrand on järgmine:

f = mx&& + bx& + kx . (2.119)


Selle liikumisvõrrandi võib jagada tinglikult kahte ossa

f = α⋅ f ' + β, (2.120)

kus α ⋅ f ' kirjeldab punktmassi takistusvaba liikumist, β aga sellele mõjuvaid takistusjõude:

α = m; β = bx& + kx . (2.121)

k
f m
b

Joonis.2.32. Punktmassi liikumine takistusjõudude korral

Niisugune teisendus võimaldab kasutusele võtta mudelil põhineva (model based) juhtimise,
mis taandab keeruka süsteemi masspunkti takistusvabaks positsioonjuhtimiseks. Viimases
toimib aga vea järgi (error driven) juhtimine:

'
f = xs + k ve& + k pe.
&& (2.122)

88
Süsteemi struktuur on joonisel 2.33. Sobivalt valitud tegurite α ja β korral võib keeruka
süsteemi taandada ühikpunktmassi takistuvabaks positsioonjuhtimiseks. Nendes tegurites
väljendub süsteemi mudel ning joonisel näidatud süsteem realiseerib nii mudeli kui ka vea
järgi positsioonjuhtimist.

Kui suletud süsteemis on ette antud võimendustegur k p = k sul , siis saab kriitilise sumbuvuse
jaoks leida avaldisest (2.122) juhtimisseaduse kiirusteguri ehk kiirusregulaatori ülekandeteguri:

kv = 2 ⋅ k sul . (2.123)

.
.. x
xs f' α
f Süsteem
Σ Σ .. .
m f=mx+bx+kx x

kp k .
v β,
. (bx+kx)
x
s
Σ
xs
Σ

Joonis 2.33. Keeruka süsteemi liikumisvõrrandi taandamine ühikpunktmassi taksitusvabale


liikumisele

Öeldu käib ka mittelineaarsete süsteemide kohta. Näiteks kui süsteemi liikumisvõrrand on


avaldatud kujul:

f = mx&& + bc ⋅ sign( x& ) + kx . (2.124)

See võrrand kehtib, kui masspunkti liikumist takistab kiiruse märgist sõltuv hõõrdejõud -
kuivhõõrdumine (Coulomb friction). Tegurid α ja β arvutatakse sel juhul järgmiselt:

α = m; β = bc ⋅ sign( x& ) + kx . (2.125)

Süsteemi struktuuriskeem on aga pärast liikumisvõrrandi ja tegurite α ning β asendamist sama


kui joonisel 2.33.

89
Masspunkti m pöördliikumise korral, s.t. ka manipulaatorilüli pöördliikumise korral (joon.
2.34 ), kirjeldab süsteemi liikumisvõrrand:

T = ml 2 ⋅ θ&& + v θ& + c ⋅ sign( θ& ) + m lg⋅ cos(θ ), (2.126)


mida võib teisendada kujule:

'
T = αT + β, (2.127)
kus
α = ml 2 = J - inertsimoment;
β = vθ& + c ⋅ sign(θ&) + m lg⋅ cos(θ ).

Kui juhtimiseks kasutatakse analoogilist juhtimisseadust:

T' = &&
θs + k v e& + k p e,
(2.128)
siis kujuneb ka süsteemi struktuur sarnaseks eespool vaadeldutega.

l
g

T
Θ

Joonis 2.33. Manipulaatori pöördlüli (punktmassi) liikumine

Üldjuhul kirjeldab jäiga keha dünaamikat liikumisvõrrand:

T = M (θ )θ&& + V (θ , θ&) + G (θ ) + F (θ ,θ&), (2.129)

kus M (θ )θ&& iseloomustab inertsijõude, V (θ ,θ&) - kesktõuke- ja Coriolise jõude, G (θ ) -


raskusjõudu ja F (θ ,θ&) - hõõrdejõudu.

Kõik võrrandi (2.129) liikmed on avaldatavad maatriksitena.

90
Vaatamata üldistatud dünaamikaülesande keerukusele õnnestub jäiga keha
positsioonjuhtimine ka sel juhul taandada ühikpunktmassi takistusvabale positsioon-
juhtimisele. Süsteemi struktuuriskeem on joonisel 2.35.

'
T = αT + β; α = M (θ ); β = V (θ , θ&) + G (θ ) + F (θ , θ&) (2.130)
ning positsioonjuhtimisseadus

T' = &&
θs + Kv E& + K p E ,
(2.131)
kus Kv ja K p on vektoritena esitatavad juhtimisseaduse võimendustegurid ja

E = θs − θ (2.132)
vektorina esitatav viga.

.. Θ
xs T' T
Σ M(Θ ) Σ Manipulaator Θ.

kp k . .
v V( Θ ,Θ )+G(Θ )+F(Θ Θ, )
.
xs
Σ
xs
Σ

Joonis 2.35. Manipulaatori üldistatud mudelil põhinev positsioonjuhtimissüsteem

Manipulaatori positsioonjuhtimine mudeli järgi on raske, sest eelkõige on puudu vajalikke


andmeid või on need ebatäpsed. Seetõttu räägitakse ka mudeli ebatäpsusest. Mudeli
ebatäpsuse tõttu tekib süsteemis täiendav positsioonimisviga, mis on arvutatav võrrandist:

E&& + Kv E& + K p E = M$ −1 ( M − M$ )&&


θ + (V − V$ ) + ( G − G$ ) + ( F − F$ ) ,
(2.133)
kus katusega suurused vastavad mudelis kasutatavatele, ilma katuseta aga tegelikele.

Robotiajamite positsioonjuhtimist korraldatakse nii üksiku lüli kui terve manipulaatori


tasandil. Esimesel juhul teisendatakse kõigi lülide keskkonna ja manipulaatori
baaskoordinaadistikke väljaspool positsioonjuhtimise kontuuri, s. o. ülemisel juhtimis-
tasandil. Teisel juhul teisendatakse koordinaate positsioonjuhtimise kontuuri sees, s. o. iga
ajami jaoks eraldi. Teine juhtimisviis on märksa keerukam ning nõuab suurema toimekiirusega
juhtseadmeid. Enamikus tööstusrobotites kasutatakse esimest positsioonjuhtimise moodust.

91
2.7. Robotsüsteemi talitluse juhtalgoritmid

Robotsüsteem on automaatsest paindtootmissüsteemist mingi tehnoloogiliselt piiritletud osa.


Sõltuvalt tootmisprotsessi kulgemisest kuuluvad paindtootmissüsteemi mitmesugused
tööpingid, transpordiseadmed, abiseadmed ning robotid. Robotsüsteemi juhitakse vastavalt
tehnoloogiaprotsessi üldisele algoritmile, mis määrab protsessi kulgemise iseloomu ning
seadmete töötamise ajalise ning loogilise järjekorra. Enamik tehnoloogiaprotsesse on
tsüklilised.

Robotsüsteemi soovitud talitlusele vastab teatud hulk soovitud olekuid ning nende olekute
kordumisi soovitud järjekorras. Robotsüsteemi talitluse käigus tekivad ka mittesoovitud
olekud, näiteks tõrked seadmete töös või avariid. Osa neist olekutest nähakse robotsüsteemi
loomisel ette. Osa mittesoovitud olekuid tekitavad asjaolud, mida on väga raske prognoosida,
nagu süsteemi üksikute elementide tõrked.

Robotsüsteemi projekteerimisel antakse vastavalt tehnoloogiaprotsessi soovitud kulgemisele


ette soovitud olekute hulk ning järjestus, s. t. programm. Ette tuleb näha ka mittesoovitud
olekute analüüsi- ja selekteerimise programmid ning nendest olekutest väljumise
päästeprogrammid. Juhtseadme tööprogramm peab arvestama nii soovitud kui ka võimalikke
mittesoovitud olekuid ning tagama robotsüsteemi töö reaalsetes keskkonnatingimustes.

Robotsüsteemi soovitud talitluse kirjeldamiseks kasutatakse mitmesuguseid meetodeid, nagu


näiteks 1) tsüklogramme, 2) tabeleid, 3) algoritmi plokkskeeme, 4) graafskeeme, 5) mitut
liiki lülitusskeeme, 6) mitmes programmeerimiskeeles programme ning 7) Petri võrke.
Loetletud meetodid on erisuguse otstarbe ning üldistusastmega. Lülitusskeemide abil luuakse
konkreetse juhtseadme riistvara. Programmid salvestatakse juhtseadme mällu ning nad
moodustavad koos juhtimiseks vajalike andmetega tarkvara. Tsüklogrammid, tabelid, plokk- ja
graafskeemid võivad olla nii juhtseadmete riistvara kui ka tarkvara loomise aluseks. Kõige
universaalsemaks loogikasüsteemide kirjeldamise meetodiks on Petri võrgud.

Töö ajalist kulgu lihtsas robotsüsteemis näitab tsüklogramm (vt. tabel 2.4). Teatud
operatsioonid vajavad töötingimuste automaatset kontrolli - kas detailid on salves olemas, kas
detaili asend on õige. Kui tingimused puuduvad, robotsüsteem peatub ning signaliseerib
takistustest.

Diskreetseid protsesse esitatakse olekute jadana. Diskreetse oleku muutumist nimetatakse


siirdeks. Märkigem, et siirde mõiste on siin märksa laiem kui siirdeprotsess manipulaatori
ajamite käsitlemisel ning ei tähista ainult liikumist ühest ruumipunktist teise. Üldjuhul
tähendab siire süsteemis toimivate signaalide (andurite koodid, täiturite juhtpinged

92
Tabel 2.4
Robotsüsteemi tsüklogramm

Jrk. Tööoperatsioon Tööoperatsiooni kestus Märkusi


1. Käe viimine salves asuva xxxxx v = 0,2 m/s
detailini
2. Detaili haaramine xx
3. Detaili eemaldamine xxx v = 0,2 m/s
salvest
4. Detaili viimine xxxx v = 0,5 m/s
(teisaldamine) töökohale
5. Detaili paigale asetamine ja xxx
suunistamine
6. Detaili vabastamine xx
7. Käe eemaldamine xxxx
töökohalt
8. Käe viimine lähteasendisse xxxxx v = 0,5 m/s
9. Tsükli kordamine

jne.) astmelist muutumist. Siirded jagunevad tingimatuteks ja tingitud siireteks. Tingimatute


siirete korral toimub siire uude olekusse automaatselt kohe, kui lõpeb eelnenud olekule vastav
tegevus. Tehnoloogiaprotsesside puhul tähendab see, et protsess jätkub järgmise
tööoperatsiooniga. Seejuures on järgmine olek süsteemile teada juba enne töö algust. Tingitud
siirete korral võtab süsteem enne uude olekusse siirdumist vastu otsuse siirde suuna kohta.
Otsus sõltub tingimustest, mis ühe või teise siirde valikul peavad olema täidetud. Kui näiteks
tööoperatsiooni kontrollimisel selgub, et töödeldud detail ei vasta nõuetele, tuleb see suunata
lisatöötlemisele või praagi hulka. Nõuetekohaseid detaile töödeldakse aga edasi. Ka robot
peab otsustama, kas oma tegevust jätkata (näiteks on tööpingi detailikassett tühjaks saanud).
Arvutusprotsessis võib edasine tehete järjekord sõltuda vahetulemi märgist jne. Kõigi
niisuguste tingitud siirete täitmiseks lahendab süsteemi juhtseade loogilise otsustusülesande.
Et juhtida protsesse reaalses ajas, vajab juhtseade sisemist kella, mis võimaldab väljastada
juhtsignaale kindlal hetkel või moodustada täpselt etteantud kestusega ajaintervalle. Kuna
enamik tootmisprotsesse on tsüklilised, s. t. teatud arvu olekute järel hakkavad
tööoperatsioonid korduma, peab juhtseadmel olema võimalus moodustada mitmesuguseid
tsükleid.

Joonisel 2.36 on mitme eri töötsükli graafskeemid, kus ringid kujutavad süsteemi olekuid ja
nooled siirdeid. Lihttsükkel (joon. 2.36, a) sisaldab ainult tingimatuid siirdeid ning selle kulg
on täpselt ette määratud. Hargnev tsükkel (joon. 2.36, b) sisaldab nii tingimatuid kui ka
tingitud siirdeid. Näiteks võib süsteem olekust 1 siirduda olekusse 2 või ka olekusse 7.
Jõudnud tingitud siirdega olekusse 7, järgneb süsteemi tingimatu siire olekusse 8. Sageli on
süsteemi töös üks põhitsükkel ja rida alamtsükleid (joon. 2.36, c), mis täidetakse teatud
tingimustel. Keerukates süsteemides on erinevad töötsüklid üksteisega sageli tihedalt läbi

93
põimunud (joon. 2.36, d), nii et süsteem võib töötada kaua erinevatel tsükliharudel, ilma et
olekud täpselt samas järjekorras korduma hakkaksid.

a) b) 7
1 2 1
8
3 6 2
7

4 3 9
6 5
5 4
10
c) d) 6
11
12 1

10 5
2 2
1 7
4
3 12 3
9 8
11 10
4 9
6
8
5

Joonis 2.36. Seadmete ja süsteemide töötsükleid

Joonisel 2.36 kujutatud graafskeeme võib vaadelda suvalise robotsüsteemi töötsüklitena.


Roboti töö moodustab robotsüsteemi tööst ühe osa. Roboti juhtseade peab aga kontrollima
kogu süsteemi tööd, andes vajaduse korral käske ka tehnoloogiaseadmetele. Näiteks
kujutlegem süsteemi, kus robot teenindab järjestikku mitut tehnoloogiaseadet. Iga seade
sooritab detailiga mitu tööoperatsiooni, millele vastavad seadmete erinevad olekud. Kogu
süsteemi iseloomustaksid sel juhul joonisel 2.36, c toodud graafskeemiga sarnased tsüklid,
kus põhitsükkel näitab roboti, alamtsüklid aga tehnoloogiaseadmete tööd. Robotsüsteemi
juhtseadme ülesanne on moodustada siirde- ja juhtkäske. Füüsiliselt on need elektri-
signaalidena esitatud kahendkoodis sõnad. Sõna pikkus sõltub kasutatavate käskude arvust,
kusjuures n-kohalise sõnaga edastatav maksimaalne käskude arv on 2n.

Siirdekäskude moodustamise aluseks on seadme töö algoritm, mida kujutatakse nii


graafskeemina (joon. 2.36) kui ka plokkskeemina (joon. 2.37). Viimasel juhul on näidatud ka
kõik siirdetingimused (vt. rombikujulised plokid). Tingimussiirete korral võrreldakse teatud
etteantud tingimusi süsteemi tegelike oleku- ja ajasignaalidega. Ajasignaalide moodustamiseks

94
peab roboti juhtseadmes olema küllalt täpne kell, mida aeg-ajalt sünkroniseeritakse välise
signaaliga, milleks võib näiteks olla kõrgema hierarhiatasandi arvuti signaal. Sisemiseks kellaks
on juhtseadmes taktimpulsside generaator, mille sagedust stabiliseerib kvartsresonaator.
Roboti olekut iseloomustavad kõigepealt manipulaatori asendi- ja kiirusandurite signaalid.
Lisaks kasutatakse mitmeid töörežiimide piirväärtusi kontrollivaid andureid, mis kontrollivad
mootori koormusvoolu, manipulaatori lülide piirasendeid jms. parameetreid. Kõik need
signaalid kokku võimaldavad fikseerida roboti oleku, mille alusel moodustatakse siirde- ja
juhtkäsud. Robotsüsteemi juhtimisel tuleb süsteemi oleku määramisel arvestada veel
signaalidega paljudelt robotiga koos töötavatelt tehnoloogia- ja transpordiseadmetelt,
sealhulgas ka tehisnägemisseadmetelt saabuva infoga. Robotsüsteemi töö ajal kontrollitakse
näiteks töödeldavate detailide temperatuuri, mõõtmeid, pinnasiledust, massi;
diagnostikaseadmed mõõdavad vibratsiooni ja müra. Seega võib süsteemi eri olekute arv
ulatuda mitmesajani ning süsteemi juhtimine osutuda küllalt keerukaks.

Algus Algoritmi käivitamine

Töövõime? Juhtseadme töövõime


kontroll ja tingimussiire

Ajamite Ajamite käivitamine ja


käivitamine tingimusteta siire

Manipulaatori asendi
Asend? kontroll ja tingimussiire

Järgmise Ülesande täitmine ja


positsioonimispunkti tingimusteta siire
salvestamine

Ülesande täitmise
Ülesanne? kontroll ja tingimussiire

Lõpp Algoritmi peatamine

Joonis 2.37. Juhtseadme algoritm

95
KIRJANDUS

1. Lehtla T. Tööstusrobotid. Otstarve ja ehitus. Tln.: Valgus, 1985. 120 lk.


2. Tiismus H., Lehtla T. Tööstusrobotid. Ajamid ja nende elemendid. Tln.: Valgus,
1987. 160 lk.
3. Craig J. J. Introduction to Robotics. Mechanics & Control. Stanford University.
Addison-Wesley Publishing Company.
4. Schwarz W., Zecha M., Meyer G. Industrierobotersteuerungen. Berlin: VEB Verlag
Technik, 1985. 344 S.
5. Thring M.V. Robots and Telechirs. New York: John Wiley & Sons, 1983. 298 p.
6. Upravljajušie sistemõ promõšlennõh robotov. J. D. Andrianov, L J. Glaiser, M. B.
Ignatjev i drugije. Pod obštšeij red. I. M. Makarova, V. A. Tšiganova. M.:
Mašinostroenije, 1984. 288 s.
7. Timofejev A. V. Upravlenije robotami: Utšebnoje posobije. L.: Izdatelstvo
Leningradskogo Universiteta, 1986. 240 s.
8. Sistemõ upravlenija promõšlennõmi robotami i manipulatorami: Utšebnoje posobije.
J.I. Jurevitš, J. D. Andrianov, S. I. Novatšenko i drugije. L.: Izdatelstvo
Leningradskogo Universiteta, 1980. 184 s.
9. Robototehnika. J. D. Andrianov, E. P. Bobrikov, V. N. Gontšarenko i drugije. Pod
red. J. P. Popova, J. I. Jurevitša. M.: Mašinostroenije, 1984. 288 s.

96
SISUKORD

Eessõna 2
1. JUHTIMISSÜSTEEMIDE ÜLDISELOOMUSTUS 3

1.1. Juhtimise põhimõisteid 3


1.2. Robot kui automaatjuhtimisobjekt 13
1.3. Robotite matemaatilised mudelid ja juhtimisülesanded 17
1.4. Riistvara- ja tarkvarahierarhia 21
1.5. Programmjuhtimissüsteemide kujunemine 25
1.6. Juhtimissüsteemide liigitus 28
1.7. Juhtseadmete otstarve ja põhilised tehnilised näitajad 32

2. PROGRAMMJUHTIMISE ALUSED 35

2.1. Programmjuhtimise ülesanded 35


2.2. Asendivektorid ja nende teisendamine 39
2.3. Kiirusvektorite teisendamine 47
2.4. Manipulaatori kinemaatikamudel 52
2.5. Roboti liikumise üldjuhtimine 63
2.6. Lokaalne juhtimine 76
2.7. Robotsüsteemi talitluse juhtalgoritmid 86

KIRJANDUS 90

97
98

You might also like