42
2. MANIPULAATORI KINEMAATIKA 2.1. Asendivektorid ja nende teisendamine Roboti kinemaatika uurib ajamitega tekitatud manipulaatori liikumist arvestamata seejuures rakendatud jõudude mõju. Seejuures on liikumist iseloomustavateks suurusteks manipulaatori lülide asendid, kiirused, kiirendused, tõuked ja nende kõik muud kõrgemat järku tuletised. P A r Punkti asukoht ristkoordinaadistikus {A} on kirjeldatav vektoriga (joonis 2.1), mis on määratud selle projektsiooniga telgedele x, y, z. . = z y x A p p p P r (2.1) Keha orientatsioon ehk suunistus ruumis ristkoordinaadistikus {A} määratakse kolme ühikvektoriga x y z B B B , , . Need vektorid on üksteisega risti ning moodustavad kehaga seotud ristkoordinaadistiku {B}. Seega on keha suunistuse muutumine kirjeldatav ühe ristkoordinaadistiku pööramisega teise ristkoordinaadistiku suhtes. Ühikvektor x B on kirjeldatav koordinaadistikus {A} selle kolme projektsiooniga koordinaadistiku {A} telgedel x, y, z. Samuti on kirjeldatavad ka ühikvektorid ja z . y B B {A} p x x y z P A p y p z O A Joonis 2.1. Punkti asendivektor ristkoordinaadistikus = B Z B Y B X B A x x x X r (2.2) = B Z B Y B X B A y y y Y r = B Z B Y B X B A z z z Z r B A Z r Vektorid , , B A X r B A Y r moodustavad rotatsioonimaatriksi , mis iseloomustab koordinaadistiku {B} suunistust koordinaadistiku {A} suhtes. B A R 23

2. MANIPULAATORI KINEMAATIKA...2. MANIPULAATORI KINEMAATIKA 2.1. Asendivektorid ja nende teisendamine Roboti kinemaatika uurib ajamitega tekitatud manipulaatori liikumist arvestamata

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • 2. MANIPULAATORI KINEMAATIKA 2.1. Asendivektorid ja nende teisendamine Roboti kinemaatika uurib ajamitega tekitatud manipulaatori liikumist arvestamata seejuures rakendatud jõudude mõju. Seejuures on liikumist iseloomustavateks suurusteks manipulaatori lülide asendid, kiirused, kiirendused, tõuked ja nende kõik muud kõrgemat järku tuletised.

    PAr

    Punkti asukoht ristkoordinaadistikus {A} on kirjeldatav vektoriga (joonis 2.1), mis on määratud selle projektsiooniga telgedele x, y, z.

    .⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    z

    y

    xA

    ppp

    Pr

    (2.1)

    Keha orientatsioon ehk suunistus ruumis ristkoordinaadistikus {A} määratakse kolme ühikvektoriga x y zB B B, , . Need vektorid on üksteisega risti ning moodustavad kehaga seotud ristkoordinaadistiku {B}. Seega on keha suunistuse muutumine kirjeldatav ühe ristkoordinaadistiku pööramisega teise ristkoordinaadistiku suhtes. Ühikvektor xB on kirjeldatav koordinaadistikus {A} selle kolme projektsiooniga koordinaadistiku {A} telgedel x, y, z. Samuti on kirjeldatavad ka ühikvektorid ja z . yB B

    {A}

    px

    x

    y

    z

    PA

    py

    pz

    OA

    Joonis 2.1. Punkti asendivektor ristkoordinaadistikus

    ⎥⎥⎥

    ⎢⎢⎢

    =

    BZ

    BY

    BX

    BA

    xxx

    Xr

    (2.2)

    ⎥⎥⎥

    ⎢⎢⎢

    =

    BZ

    BY

    BX

    BA

    yyy

    Yr

    ⎥⎥⎥

    ⎢⎢⎢

    =

    BZ

    BY

    BX

    BA

    zzz

    Zr

    BAZr

    Vektorid , , BA Xr

    BAYr

    moodustavad rotatsioonimaatriksi , mis iseloomustab koordinaadistiku {B} suunistust koordinaadistiku {A} suhtes.

    BAR

    23

  • [ .,, BABABAB

    ZB

    ZB

    ZB

    YB

    YB

    YB

    XB

    XB

    X

    AB ZYX

    zyxzyxzyx

    Rrrr

    =⎥⎥⎥

    ⎢⎢⎢

    = ] (2.3)

    Koordinaadistiku ehk teljestiku {B} asend teljestiku {A} suhtes (joonis 2.2) määratakse selle teljestiku alguspunkti asendivektoriga BO

    APr

    ning rotatsioonimaatriksiga RAB { } { }BOAAB PR

    r,B = (2.4)

    PBr

    Lükatud teljestikus {B} kirjeldatud asendivektorit (joonis 2.3) kirjeldatakse koordinaadistikus {A} kahe vektori summana

    BOABA PPPrrr

    += (2.5)

    PBr

    Pööratud teljestikus {B} kirjeldatud asendivektorit kirjeldatakse koordinaadistikus {A} rotatsioonimaatriksi abil, kusjuures asendivektor PA

    rRAB leitakse rotatsioonimaatriksi B

    ja asendivektori

    ARPBr

    korrutamisega.

    {A} zAxB

    OA

    APBO

    {B}

    xA

    yBzB

    yA

    OB

    Joonis 2.2. Haaratsi või tööriista suunistuse määramine

    xA

    {Α}

    APBO AP

    BP

    OB

    zB

    yB

    xB

    zA

    yA

    {Β}

    OA

    Joonis 2.3. Asendivektori teisendamine lükatud teljestikus

    24

  • PRP BABA

    rr⋅= (2.6)

    Rotatsioonimaatriks võimaldab ka vastupidist teisendust, s.t määrata teljestiku {A} suunistust teljestiku {B} suhtes. Seda kirjeldab rotatsioonimaatriks B . Lineaaralgebra kursusest on teada, et ortonormaalsete veergudega maatriksi ehk ortogonaalmaatriksi pöördmaatriks võrdub transponeeritud maatriksiga

    AR

    TA

    BAB

    AB RRR ==

    −1 (2.7) MathCAD-programmi Symbolics abil saab vastavate arvutustega tõestada, et pöördmaatriks võrdub transponeeritud rotatsioonimaatriksiga. Mõlemad avaldised on võrdsed, sest pöördmaatriksi elementide nimetaja võrdub ühega.

    Rcos α( )sin α( )

    0

    sin α( )−cos α( )

    0

    0

    0

    1

    ⎛⎜⎜⎝

    ⎞⎟⎟⎠

    :=

    RTcos α( )sin α( )−

    0

    sin α( )cos α( )

    0

    0

    0

    1

    α

    ⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    R 1−

    cos α( )cos α( )2 sin α( )2+( )

    sin α( )−cos α( )2 sin α( )2+( )

    0

    sin α( )cos α( )2 sin α( )2+( )

    cos α( )cos α( )2 sin α( )2+( )

    0

    0

    0

    1

    ⎡⎢⎢⎢⎢⎢⎣

    ⎤⎥⎥⎥⎥⎥⎦

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

    )(det

    11jiRR

    R =− (2.8)

    kus Rji on adjungeeritud maatriks. Tänu rotatsioonimaatriksi ortonormaalsusele saab 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

    jikijik bac

    1

    )( (2.9)

    25

  • PBr

    Antud juhul on maatriks aij rotatsioonimaatriks, bjk võrdub asendivektoriga ning korrutiseks cik on asendivektor P

    Ar

    (i = 1...3; j = 1...3; k = 1). Asendivektori üldistatud teisendamiseks, s.o lükatud ja pööratud teljestikus {B} antud vektori PB

    r kirjeldamiseks koordinaadistikus {A}, kasutatakse valemit

    BO

    ABAB

    A PPRPrrr

    +⋅= (2.10) Valemi 2.10 saab esitada ka kujul

    PTP BABA

    rr⋅= (2.11)

    kus on koordinaadistiku {B} teisendusmaatriks (Homogeneous Transform). B

    AT Koordinaadistiku {B} teisendusmaatriks saadakse 3x3 rotatsioonimaatriksi ja 3x1 teljestiku alguspunkti asendivektori ühendamisel. Valemi 2.11 saab esitada kujul

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    =

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    1_

    1000____

    1_

    PPRP BBOAA

    BA

    (2.12)

    Viimase rea [0 0 0 1] lisamine teisendusmaatriksile ning 1 lisamine asendivektoritele on matemaatiline manipulatsioon, mille tulemusena saadakse 4x4 ruutmaatriks ja 4x1 asendivektorid. Teisendusmaatriksi kasutamine võimaldab kompaktselt kirjeldada asendivektorite teisendamise protseduuri, mis on oluline keeruka kinemaatilise ahelaga manipulaatorite matemaatilisel kirjeldamisel. Eespool leitud seoseid saab kasutada mitte ainult vektorite kirjeldamiseks erinevates koordinaadistikes, vaid ka nende asendi muutmiseks, s.o translatsiooni- ja rotatsioonioperaatoritena.

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    =

    1000100010001

    ),(Z

    Y

    X

    qqq

    QQTRANS (2.13)

    kus Q on ühiksuund ja vektori pikkus. Q

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎡ −

    =

    1000010000cossin00sincos

    ),(αααα

    αZROT (2.14)

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

    26

  • Translatsiooni- ja rotatsioonioperaatorite ühendamisel saadakse koordinaatide teisendusoperaator (teisendusmaatriks). Mitu järjestikust koordinaatide teisendust võib ühendada liitteisenduseks ning leida sellele vastava teisendusoperaatori

    ;PTP CBCB

    rr⋅= PTP BAB

    Arr

    ⋅= millest

    PTTP CBCAB

    Arr

    ⋅⋅= (2.15) Liitteisenduse maatriks

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎡+⋅⋅

    =

    1000____

    BOA

    COBA

    BBC

    ABA

    C

    PPRRRT

    rr

    (2.16)

    Pöördeteisenduse maatriksi võib esitada kujul A

    BT

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎡⋅−

    =

    1000____

    OBATA

    BTA

    BBA

    PRRT

    r

    (2.17)

    ehk .1−= TT ABBA

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

    BT

    Koordinaadistike teisendusvõrrandite lahendamine võimaldab tuntud teisenduste abil määrata mõne tundmatu teisenduse. Näiteks kui

    TTT ADEA

    ED ⋅= ja TTTT

    CD

    BC

    EB

    ED ⋅⋅=

    siis TTTTT CDBC

    EB

    AD

    EA ⋅⋅==

    millest

    11 −− ⋅⋅= TTTT CDAD

    EB

    BC (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

    1ˆ =Z;1ˆ =X ;1ˆ =Y (2.19)

    27

  • ja 3 nende ortogonaalsuse (ehk täisnurksuse) kohta

    ;0ˆˆ =⋅YX (2.20)

    ;0ˆˆ =⋅ZX 0ˆˆ =⋅ZY

    Vektorite skalaar- ja vektorkorrutise olemuse paremaks mõistmiseks on järgnevalt esitatud ristuvate ja samasuunaliste vektorite skalaarkorrutise (dot product) näited

    0

    5

    0

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    5

    0

    0

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    ⋅ 0=

    5

    0

    0

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    5

    0

    0

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    ⋅ 25=

    αsin⋅⋅⋅=× banba rrrSamade vektorite vektorkorrutis (cross product) annab järgmise

    tulemuse:

    5

    0

    0

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    0

    5

    0

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    ×

    0

    0

    25

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    =

    5

    0

    0

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    5

    0

    0

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    ×

    0

    0

    0

    ⎛⎜⎜⎜⎝

    ⎞⎟⎟⎟⎠

    =

    kus on vektoritega ja risti olev korrutise suunavektor. Seega on kahe ristuva vektori skalaarkorrutis 0, nende vektorkorrutiseks on aga mõlema vektoriga risti olev vektor, mille amplituud võrdub vektorite amplituudide korrutisega.

    br

    nr ar

    Sellest järeldub, et teljestiku pööramist võib iseloomustada vaid kolme sõltumatu muutujaga. Enamikul juhtudel kasutatakse selleks kolme nurka (joonis 2.4). 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 pööramisel z-telje ümber. Vastavalt sellele, mis telje ümber pööramine toimub, nimetatakse vastavaid nurki α-, β-, γ- või ka x-, y-, z-nurkadeks. Kolm võimalikku pöördenurka on kasutusel kõikjal, kus on tegemist vaba ruumilise liikumisega. Need nurgad on olulised nt lennukite juhtimisel (joonis 2.5 a). Samu nurki võib kasutada ka ruumilist tegevust jälgiva kaamera või inimese pea puhul (joonis 2.5 b).

    ROLL PITCH YAW

    zB

    PÖÖRE KALLUTUS LENGERDUS

    xB

    yB

    yA

    zA

    xA

    zB

    xB

    yB

    yA

    zA

    xA

    zB

    xB

    yB

    yA

    zA

    xA

    β

    α

    γ

    Joonis 2.4. Manipulaatori tööorgani suunistuse pöörde-, kallutus- ja lengerdusnurk

    28

  • Joonis 2.5. Pöörde-, kallutus- ja lengerdusnurgad lennuki juhtimisel a ja inimese pea pööramisel b Teljestiku üldistatud rotatsioonimaatriksi saab tuletada ka üksikute rotatsioonioperaatorite kaudu

    ),(),(),(),,( γβααβγ BA

    BA

    BAA

    B XROTYROTZROTR ⋅⋅= (2.21) kus

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡ −=

    1000cs0sc

    ),( αααα

    αBAZROT

    ⎥⎥⎥

    ⎢⎢⎢

    −=

    ββ

    βββ

    c0s010

    s0c),( B

    AYROT

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡−=γγγγγ

    cs0sc0001

    ),( BAXROT

    Kõikides neis maatriksites on siinus- ja koosinusfunktsioonide tähistamiseks kasutatud vaid esitähti s ja c. Üldistatud rotatsioonimaatriks

    ⎥⎥⎥

    ⎢⎢⎢

    ⋅⋅−⋅−⋅⋅⋅+⋅⋅⋅⋅+⋅⋅⋅−⋅⋅⋅

    =γβγββ

    γαγβαγαγβαβαγαγβαγαγβαβα

    αβγccscs

    sccssccssscssscsccsscccc

    ),,(RAB (2.22)

    Maatrikseid saab hõlpsasti korrutada programmiga MathCAD. Sümbolkujul esitatud maatrikseid korrutatakse programmiga MathCAD Symbolics. Järgnevalt on esitatud näide teisendusmaatriksite sümbolkujul korrutamisest programmiga MathCAD.

    Pöörde kesktasand Kallutuse kesktasand

    Pööre Kallutus

    Lengerdus

    Pööre

    z telg

    y telg x telg

    Lengerdus

    Kallutus

    a b

    29

  • T1

    cos α( )sin α( )

    0

    0

    sin α( )−cos α( )

    0

    0

    0

    0

    1

    0

    x

    y

    z

    1

    ⎛⎜⎜⎜⎜⎝

    ⎞⎟⎟⎟⎟⎠

    :=

    T2

    cos β( )0

    sin β( )0

    sin β( )−0

    cos β( )0

    0

    1

    0

    0

    a

    0

    1

    z

    h

    ⎜⎜⎜⎜⎝

    ⎞⎟⎟⎟⎟⎠

    :=

    T T1:=

    T

    cos α( ) cos β( )⋅sin α( ) cos β( )⋅

    sin β( )0

    cos α( )− sin β( )⋅sin α( )− sin β( )⋅

    cos β( )0

    sin α( )−cos α( )

    0

    0

    cos α( ) a⋅ x+sin α( ) a⋅ y+

    h z+

    1

    h

    T2⋅T2

    ⎞⎜ ⎟⎜⎜

    ⎟⎟→

    ⎜ ⎟⎝ ⎠

    Sümbolkujul korrutatud maatriksist saab avaldada võrrandid muutujate (α, β, z) arvutamiseks ning manipulaatori kinemaatika pöördülesande lahendamiseks. 2.2. Manipulaatori kinemaatikaülesanded Roboti juhtimisel antakse programmiga ette liikumise siht- ehk positsioonimispunkti koordinaadid, trajektoori soovitav kuju ning liikumise iseloom ehk kiirusdiagramm. Tööorgani viimiseks algasendist lõppasendisse peab juhtseade lahendama järgmised ülesanded: 1. määrama andurite signaalide järgi robotkäe lülide tegeliku asendi (α , β , γa a a)

    2. arvutama suuruste (αa, β , γ ) järgi tööorgani asendi ristkoordinaadistikus xa a a, y , za a, s.t lahendama manipulaatori kinemaatika otsese ülesande

    3. plaanima trajektoori ning liikumisdiagrammi. Sirgjoonelise liikumise korral peab juhtseade määrama trajektoori sihi, sellel liikumise suuna ning ajalise seaduspärasuse

    4. leidma tööorgani soovitud liikumise jaoks jooksvate asendite projektsioonid ristkoordinaadistikus x , y , zs s s, vajaduse korral leidma ka kiirusvektori vastavad projektsioonid

    5. määrama soovitud liikumise jaoks vajalikud robotkäe lülide asendid (α , βs s, γs) ning väljastama need ajamitele seadesignaalidena, s.t lahendama manipulaatori kinemaatika pöördülesande

    6. kordama eespool loetletud tegevusi kuni positsioonimispunkti jõudmiseni ning seejärel peatama liikumise.

    Nendele tegevustele vastav roboti juhtimise algoritmi plokkskeem on joonisel 2.6.

    30

  • Kinemaatika otsene ülesanne. Manipulaatori kinemaatika otsese ülesande lahendamisel leitakse manipulaatori lülide mõõtmete ning nende lülide omavaheliste suhteliste asendivektorite ja pöördenurkade järgi manipulaatori tööorgani (haaratsi) asendivektor ja suunistusnurgad manipulaatori baaskoordinaadistikus. Lühidalt öeldes toimub haaratsi või tööriista asendi määramine baaskoordinaadistikus lülide etteantud koordinaatide (nt suhteliste pöördenurkade) järgi. Kinemaatika pöördülesanne. Manipulaatori kinemaatika pöördülesande lahendamisel tuleb tööorgani etteantud asendi ja suunistusnurkade järgi määrata manipulaatori kõikide lülide omavahelised asendivektorid ja pöördenurgad, s.t määrata lülide asend (nt suhtelised pöördenurgad) haaratsi või tööriista etteantud baaskoordinaatide järgi. Kinemaatika otsese ülesande lahendamise meetodid:

    • geomeetriline meetod (geomeetria ja trigonomeetria põhiteisendused) • maatriksmeetod (koordinaadistike teisendusmaatriksid).

    Kinemaatika pöördülesande lahendamise meetodid:

    • mitme võimaliku lahendi puhul tuleb määrata manipulaatori poos • lahendite otsimine kõigi võimalike meetoditega (algebraliste, geomeetriliste,

    numbrilistega)

    Liiknmiskäsu ja sihtasendi koordinaatide etteandmine

    Tegeliku asendi mõõtmine roboti baaskoordinaadistikus Kinemaatika otsese ülesande lahendamine ja tegeliku asendi määramine ristkoordinaadistikus Trajektoori plaanimine ja soovitud programmliikumise etteandmine ristkoordinaadistikus Kinemaatika pöördülesande lahendamine ja seadesuuruste arvutamine

    Seadesuuruste väljastamine ajamitele

    Positsioonimispunkti asukoha kontroll

    ALGUS

    x2, y2, z2

    αa, βa, γa

    xa, ya, za

    xs, ys, zs

    αs, βs, γs

    αs, βs, γs

    As = Aa?

    LÕPP

    Joonis 2.6 Manipulaatori liikumise juhtimise algoritmi plokkskeem

    31

  • Otsese ülesande lahendamisel kasutatakse eelkirjeldatud koordinaadistike teisendus-maatrikseid. Pöördülesande lahendamisel saab kasutada vastavaid pöördmaatrikseid. Pöördülesande lahendamist raskendab asjaolu, et pöördülesanne pole alati üheselt lahenduv. Liigendkäel on ühte ja samasse punkti jõudmiseks kaks võimalikku poosi (joonis 2.7 a). Võimalike pooside arv sõltub manipulaatori ehitusest. Näiteks on roboti PUMA manipulaatoril haaratsi ühe ja sama asendi puhul 4 võimalikku poosi (joonis 2.7 b). Pöördülesandel on ühene lahend vaid manipulaatori etteantud poosi puhul. Seepärast tuleb enne pöördülesande lahendamist valida manipulaatori poos. Tööorgani pideva liikumise ajal pole poosi muuta võimalik.

    Joonis 2.7. Liigendkäe a ja manipulaatori võimalikud poosid b haaratsi sama asendi puhul

    o

    o

    A1

    A2L12

    0 -x x

    y

    A1

    A2 o

    o

    -x x0

    y

    Joonis 2.8. Liigendkäe asendid sirgjoonelisel liikumisel ja poosi vahetamine, mis pole pideva liikumise puhul

    võimalik Pöördülesande lahendamisel tuleb määrata lülide pöörde-, kallutus- ja lengerdusnurgad tööorgani asendivektori või rotatsioonimaatriksi elementide kaudu. Kui tähistada

    32

  • ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    333231

    232221

    131211

    rrrrrrrrr

    RAB (2.23)

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

    )cos/,cos/(2tanarc)(2tanarc

    )cos/,cos/(2tan

    1121

    221

    211,31

    3332

    ββαβ

    ββγ

    rrrrr

    rrA

    =

    +−=

    =

    (2.24)

    kus arctan2(rij) on 2 argumendi (y, x) funktsioonid. Näiteks arctan2(2, 2) = 45°. Pöördülesande võrrandite lahendamiseks saab kasutada MathCAD programmi ning selle operaatoreid Given ja Find α 0:= β 0:= r1 6:= r2 4:=

    Givencos α( ) cos β( )⋅ sin α( ) sin β( )⋅−( ) r2⋅ cos α( )( ) r1⋅+ 6

    sin α( ) cos β( )⋅ cos α( ) sin β( )⋅+( ) r2⋅ sin α( )( ) r1⋅+ 4

    α

    β

    ⎛⎜⎝

    ⎞⎟⎠

    Find α β,( ):=

    α 0→

    β 12π⋅→

    Pöördülesande lahendamisel tuleb sageli tegemist teha transtsendentsete võrranditega. Transtsendentsed võrrandid (transcendental equations) on võrrandid, millel puudub tuntud funktsioonidega esitatav ilmutatud lahend. Kuna trigonomeetriliste funktsioonidega võrrandid on sageli ka transtsendentsed, siis on nende ilmutatud üldkujul lahendamiseks otstarbekas võtta kasutusele asendusfunktsioonid. Trigonomeetrilised funktsioonid saab asendada uue muutujaga u

    ( )

    2

    2

    2

    12sin

    11cos

    2/tan

    uuuu

    u

    +=

    +−

    =

    =

    α

    α

    α

    (2.25)

    Pärast funktsioonide niisugust asendamist muutuvad transtsendentsed võrrandid polünoomideks, mida saab lahendada.

    33

  • 2.3. Kiirus- ja momendivektorite teisendamine Kiirusvektorite ja jõu- ning momendivektorite teisendamine erineb asendivektorite teisendamisest, kuna sel juhul pole alati oluline vektori rakenduspunkt, s.t vektor ei kaota nihutamisel oma tähendust, kui tema pikkus ja suund ei muutu. Sel juhul on tegemist vabavektoritega (free vector), mis säilitavad oma suuruse ning suuna sõltumata rakenduspunktist. Vektorite teisendamine kuulub lineaaralgebra uurimisvaldkonda ning sellega saab lähemalt tutvuda vastavas kursuses. Siin esitatud valemid aitavad aga paremini mõista robotite juhtimise matemaatilisi probleeme. Vabavektorite teisendamine. Kuna koordinaadistiku alguspunkti asendivektor pole vaba-vektorite puhul oluline, saab momendivektorit teisendada üksnes rotatsioonimaatriksi abil

    TorqueBA

    BTorqueA NRN ⋅= (2.26)

    Samuti saab teisendada ka kiirusvektori

    VelocityBA

    BVelocityA VRV

    rr⋅= (2.27)

    Seega ei mõjuta teljestiku pööramine kiirusvektori suurust ega suunda, kuid muudab vektori kirjeldust. Kiirusvektori teisendamine lineaarliikumisel. Kui koordinaadistik {B} liigub koordinaa-distiku {A} suhtes kiirusega ning on {A} suhtes pööratud, siis saab koordinaadistikus

    {B} lineaarselt liikuva punkti kiirusvektori 0B

    AVr

    PBVr

    teisendada koordinaaditikku {A} võrrandiga.

    PBA

    BBA

    PA VRVV

    rrr⋅+= 0 (2.28)

    Koordinaadistiku {B} pöördliikumisel koordinaadistiku {A} suhtes, mida kirjeldab nurkkiirusvektor B

    AΩr

    PBr

    , leitakse koordinaadistikus {B} asendivektoriga määratud ja {B} suhtes paigalseisva punkti lineaarkiirus koordinaadistikus {A} võrranditega

    PV

    PRPA

    BA

    PA

    BAB

    A

    rrr

    rr

    ×Ω=

    ⋅= (2.29)

    Neist viimane võrrand on oma sisult sama mis skalaarsuuruste puhul kasutatav võrrand

    rv ⋅= ω , millega arvutatakse pöörleval kehal oleva punkti lineaarkiirust, kus r tähistab pöörlemisraadiust.

    PBVr

    Üldjuhul, kui punkt liigub koordinaadistiku {B} suhtes lineaarkiirusega , tuleb ka see liikumine taandada koordinaadistikku {A}

    ( ) PVV ABAPBAPArrrr

    ×Ω+= või (2.30)

    PRVRV BABBA

    PBA

    BPA

    rrrr⋅×Ω+⋅= (2.31)

    34

  • Koordinaadistiku {B} samaaegse lineaar- ja pöördliikumise puhul kasutatakse võrrandit. Sel juhul lisandub summeeritavate vektorite hulka veel koordinaadistiku enda alguspunkti lineaarkiirusvektor

    PRVRVV BABBA

    PBA

    BBA

    PA

    rrrrr⋅×Ω+⋅+= 0 (2.32)

    Manipulaatori liigendkäe lülide kiirused. Manipulaatori xy-tasapinnaline liigendkäsi on joonisel 2.9. Käe paigalseisev baaskoordinaadistik on x0y0. Koordinaadistiku algpunkti O ümber pöörleb lüli pikkusega L , millega on liigendiga ühendatud teine lüli pikkusega L1 2. Lülide suhtelised pöördenurgad on α ja α1 2. Lüli nurkkiirus võrdub pöördenurga tuletisega. Järelikult

    222

    111

    ωαα

    ωαα

    ==

    ==

    &

    &

    dtddt

    d

    (2.33)

    Lülide nurkkiirusvektorid paigalseisvas koordinaadistikus kui pöörlemine toimub ümber z-telje.

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=Ω

    1

    10 0

    0

    ω

    r

    ⎥⎥⎥

    ⎢⎢⎢

    +=Ω

    21

    20 0

    0

    ωω

    r2

    03

    0 Ω=Ωrr

    (2.34)

    y3

    α1

    α2

    L1

    L2

    x3

    y2

    x2

    y0 y1 x1

    x0OV1 = 0

    V2

    V3

    Joonis 2.9. Manipulaatori tasapinnaline liigendkäsi Koordinaadistike tsentrite lineaarkiirusvektor etteantud koordinaadistikus on määratud kiirusvektori projektsioonidega vastavatele telgedele

    35

  • ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    000

    11Vr

    (2.35)

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    0cossin

    211

    211

    22 αω

    αωLL

    Vr

    (⎥⎥⎥

    ⎢⎢⎢

    ⎡++=

    0cos

    sin

    212211

    211

    33 ωωαω

    αωLL

    LVr

    )

    Manipulaatori lülide rotatsiooni- ja teisendusmaatriksid on järgmised:

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡ −=

    10000

    11

    1101 cs

    scR (2.36)

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡ −=

    10000

    22

    2212 cs

    scR

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    100010001

    23 R

    ning

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎡ −

    =

    100001000000

    11

    11

    01

    cssc

    T (2.37)

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎡ −

    =

    1000010000

    0

    22

    122

    12

    csLsc

    T

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    =

    100001000010

    001 223

    L

    T

    Summaarne rotatsioonimaatriks

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡ −=⋅⋅=

    10000

    1212

    121223

    12

    01

    03 cs

    scRRRR (2.38)

    kus

    ( )21cos αα +212112 ssccc −= = ( )21sin αα +.212112 sccss += =

    Velocity

    BABVelocity

    A VRVrr

    ⋅=Rotatsioonimaatriksi ja omakiiruse korrutamisel ( ) saadakse kiirusvektor paigalseisvas ehk 0. koordinaadistikus. Kuna 1. koordinaadistik on 0. koordinaadistiku suhtes paigal, siis

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    000

    10Vr

    Teises koordinaadistikus liikuva keha kiirus 0. koordinaadistikus on

    220

    220 VRV

    rr⋅=

    kus ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    0cossin

    211

    211

    22 αω

    αωLL

    Vr

    36

  • millest (2.39)

    ( )( )

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡−=

    0cossin

    111

    111

    20 αω

    αωLL

    Vr

    (⎥⎥⎥

    ⎢⎢⎢

    ⎡++=

    0cos

    sin

    212211

    211

    33 ωωαω

    αωLL

    LVr

    ) (2.40)

    ( ) ( )[ ]( ) ([

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡+++++−−

    =0

    coscossinsin

    21212111

    21212111

    30 ααωωαω

    ααωωαωLLLL

    Vr

    330

    330 VRV

    rr⋅= )] (2.41)

    Viimaseid tulemusi on hõlpus kontrollida MathCAD programmi abil

    millest MathCAD arvutab

    Pärast lihtsustamist operaatoriga Simplify avaldub kiirusvektor järgmiselt:

    Jakobiaanid võimaldavad esitada mitmemõõtmelisi (vektorite) tuletisi. Kuna kiirusvektor on asendivektori tuletis aja järgi, saab kiirusvektoreid leida jakobiaani abil. 6-koordinaadilise manipulaatori jakobiaaniks on 6 x 6 maatriks. 2-koordinaadilise manipulaatori (joonis 2.11) puhul on jakobiaani mõõtmeks 2 x 2

    Ω⋅=rr

    JV 00 Jakobiaan moodustatakse joonkiirusvektori komponentide ω ja ω1 2 komponentidest. Eespool kirjeldatud joonkiirusvektorite ja 3

    0Vr

    33Vr

    ( ) ( )[ ]( ) ([ ]

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡+++++−−

    =0

    coscossinsin

    21212111

    21212111

    30 ααωωαω

    ααωωαωLLLL

    Vr

    (⎥⎥⎥

    ⎢⎢⎢

    ⎡++=

    0cos

    sin

    212211

    211

    33 ωωαω

    αωLL

    LVr

    ) ) ja

    põhjal saab moodustada järgmised jakobiaanid:

    37

  • ( ) ⎥⎦

    ⎤⎢⎣

    ⎡+

    =2221

    213 0LLcL

    sLJ α (2.42)

    ( ) ⎥⎦

    ⎤⎢⎣

    ⎡+

    −−−=

    12212211

    122122110

    cLcLcLsLsLsL

    J α

    Baaskoordinaatides saab joonkiirusvektori leida jakobiaani ja nurkkiiruste korrutisena, mida tõestab ka eeltoodud avaldiste põhjal teostatud arvutus MathCAD Symbolic programmi abil.

    L1 sin α2( )⋅L1 cos α2( )⋅ L2+

    0

    L2

    ⎛⎜⎝

    ⎞⎟⎠

    ω1

    ω2

    ⎛⎜⎝

    ⎞⎟⎠

    ⋅L1 sin α2( )⋅ ω1⋅

    L1 cos α2( )⋅ L2+( ) ω1⋅ L2 ω2⋅+⎡⎢⎣

    ⎤⎥⎦

    L1− sin α1( )⋅ L2 sin α1 α2+( )⋅−

    L1 cos α1( ) L2 cos α1 α2+( )⋅+L2− sin α1 α2+( )⋅

    L2 cos α1 α2+( )⋅⎛⎜⎝

    ⎞⎟⎠

    ω1

    ω2

    ⎛⎜⎝

    ⎞⎟⎠

    ⋅L1− sin α1( )⋅ L2 sin α1 α2+( )⋅−( ) ω1⋅ L2 sin α1 α2+( )⋅ ω2⋅−

    L1 cos α1( )⋅ L2 cos α1 α2+( )⋅+( ) ω1⋅ L2 cos α1 α2+( )⋅ ω2⋅+⎡⎢⎣

    ⎤⎥⎦

    2.4. Manipulaatorite kinemaatilised ahelad Manipulaatorite kinemaatilised ahelad moodustuvad omavahel ruumiliselt sidestatud lülidest. Lülide arv ning lülisid siduvate kinemaatiliste paaride tüübid määravad manipulaatori liikuvusastmete arvu. Selleks et teisaldada esemeid ruumis, muutes samal ajal nende telgede suunitlust, peab manipulaatoril olema vähemalt 6 liikuvusastet (eseme nihutamiseks 3mõõtmelises ruumis kolm translatoorset liikumist ja tema telgede suvaliseks pööramiseks veel kolm sõltumatut pöördliikumist). Võimalikud liikumised on näidatud joonisel 2.10. Kõik mehhanismid jagunevad tasapinnalisteks ja ruumilisteks mehhanismideks (planar and spatial mechanisms). http://www.cs.cmu.edu/People/rapidproto/mechanisms/chpt4.html Kinemaatilised ahelad koosnevad kinemaatiliste paaridega (kinematic couplings) ühendatud lülidest. Tasapinnaliste ehk tasandmehhanismide puhul on kasutusel kaht liiki ühe liikuvusastmega (ehk madalama klassi – lower pairs) kinemaatilist paari - rotatsioonipaar (revolute pair) ja translatsioonipaar (prismatic pair). Kinemaatiliste paaride liikuvusastmed (vabadusastmed) (degrees of freedom, DOF) ja seondid (constraints): 0 liikuvusastet - 6 seondit 1 liikuvusaste – 5 seondit – 5. klassi kinemaatiline paar 2 liikuvusastet – 4 seondit – 4. klassi kinemaatiline paar jne. Enamikul manipulaatoritel on lülid omavahel ühendatud ühe liikuvusastmega madalama (viienda) klassi kinemaatilise paariga (joonis 2.10), kas pöördliikumist võimaldava rotatsioonipaari R või kulgliikumiseks ette nähtud translatsioonipaariga T. Iga viienda klassi kinemaatilise paariga sidestatud lüli annab manipulaatorile ühe liikuvusastme. Järelikult peab esemete ruumiliseks teisaldamiseks ja suunistamiseks olema manipulaatoril vähemalt kuus viienda klassi kinemaatilise paariga sidestatud lüli.

    38

    http://www.cs.cmu.edu/People/rapidproto/mechanisms/chpt4.html

  • On loodud ka manipulaatoreid, mille lülid on omavahel sidestatud kolmanda või neljanda klassi kinemaatiliste paaridega. Sel juhul suureneb ühe lüli liikuvusastmete arv ning vastavalt väheneb manipulaatori kinemaatilise ahela lülide arv. Üldjuhul leitakse mehhanismi liikuvusastmete arv L kinemaatilise ahela struktuurivalemi abil

    12345 23456 pppppnL −−−−−= (2.43) kus n on liikuvate lülide arv ahelas ja p1…p5 - esimese kuni viienda klassi kinemaatiliste paaride arv ahelas. a b

    x

    z

    y

    Joonis 2.10. Keha võimalikud liikumised ruumis a ja 5. klassi kinemaatilised paarid b Sama valemit saab kasutada näiteks inimkäe liikuvusastmete arvu leidmiseks. Kui lugeda käe õlavarre-, küünar- ja randmeliigesed 3 liikuvusastmega kinemaatilisteks paarideks, siis saab inimkäe liikuvusastmete arvu leida valemiga

    9333636 3 =⋅−⋅=−= pnL (2.44) Kui kinemaatiline ahel sisaldab ainult viienda klassi paare, siis

    556 pnL −= (2.45) Manipulaatorite korral piirdutakse sageli kuuest väiksema liikuvusastmete arvuga. Sellised manipulaatorid võimaldavad esemeid teisaldada, kuid mitte suvaliselt muuta nende telgede suunistust. Nende kasutamine eeldab teisaldatavate esemete eelnevat ruumilist orienteerimist (nt korrastatud paigutust etteandekonveieril). Tasandmehhanismide korral võivad viienda klassi translatsiooni- ja rotatsioonipaarid moodustada 2n erinevat kinemaatilise struktuuriga ahelat (kus n on omavahel järjestikku ühendatud lülide arv). Ruumilise mehhanismiga manipulaatori igal kinemaatilisel paaril on aga oma telg, mida võib baaskoordinaatide ning eelnevate lülide suhtes suunistada mitmel viisil. Lisaks võib lüli

    39

  • pöörd- või kulgliikumise kese mitte kokku langeda eelneva kinemaatilise paari teljega. Seepärast on manipulaatorite kinemaatiliste ahelate võimalike struktuuride arv märgatavalt suurem. Kinemaatiliste paaride suvalise suunistuse korral on teoreetiline variantide arv lõpmata suur. Ülekaalus on kinemaatiliste paaride ortogonaalse (ristsuunalise) paigutusega ahelad. Manipulaatori kinemaatiline ahel algab liikumatust ehk kinnislülist, mis kuulub kõikide kinemaatiliste ahelate koosseisu ning mida seepärast kinemaatiliste ahelate võrdlemisel ei arvestata. Nii loetakse kinnislülist ja ühest liikuvast lülist koosnev ahel ühelüliliseks, kinnislülist ja kahest liikuvast lülist koosnev ahel kahelüliliseks jne. Ahela esimeseks kinemaatiliseks paariks võetakse see, kuhu kuulub kinnislüli. Mehhanismi liikumist iseloomustab selle lülisid ühendavate kinemaatiliste paaride vabadusastmete arv ning sellest tulenev mehhanismi liikuvusastmete arv (joonis 2.11).

    Joonis 2.11. Kinemaatiliste paaride klassid ja liikuvusastmete arv

    40

  • Teisaldusmehhanismi (käsivarre) lülide arv ja kinemaatilise ahela struktuur määravad manipulaatori üldise ehituse ja välisilme. Lülide mõõtmed seostuvad manipulaatori liikumisulatuse ja tõstevõimega. Mida rohkem on käsivarrel lülisid, seda paindlikumalt saab robot töötada (manööverdatavus), kuid seda keerulisemaks kujuneb manipulaatori konstruktsioon. Seepärast piirdutakse manipulaatorite puhul vaid minimaalselt vajalike lülide arvuga. Enamikul manipulaatoritel on 3 käsivarrelüli. Suunistusmehhanism (käelaba) on kompaktne, tema lülide liikumisulatus on väike ning ta mõjutab manipulaatori ehitust ja välisilmet vähem kui teisaldusmehhanism. Käelabas kasutatakse põhiliselt rotatsioonipaaridega sidestatud pöördliikumisega lülisid. Teisaldusmehhanismi lülisid ühendavad kinemaatilised paarid määravad koordinaadistiku, milles manipulaatori lülid liiguvad. Kolme lineaarliikumise puhul töötab manipulaator ristkoordinaadistikus, kahe lineaarliikumise ja ühe pöördliikumisega manipulaator töötab silindrilises koordinaadistikus. Kahe pöördliikumise ja ühe lineaarliikumisega manipulaator töötab sfäärilises koordinaadistikus. Kui manipulaatoril on liigendkäsi, siis võib see töötada silindrilises või sfäärilises nurkkoordinaadistikus. 2.5. Ristkoordinaatides kirjeldatav manipulaator Kolmelülilist ristuvate translatsioonipaaridega ahelat kasutatakse ristkoordinaadistikus töötava manipulaatori (gantry robot) korral (joonis 2.12). Sellise manipulaatori töötsooniks on risttahukas, mille külgede pikkused a, b, h vastavad tööorgani liikumisulatusele, suurused L, M ja H aga määravad kindlaks töötsooni asukoha ristkoordinaadistikus 0xyz.

    x

    z

    y

    Joonis 2.12. Ristkoordinaatides kirjeldatav manipulaator Ristkoordinaadistikus töötava manipulaatori kinemaatikaülesannet on lihtne lahendada, sest roboti lülide liikumissihi saab valida piki ruumi ristkoordinaadistiku telgi.

    41

  • 2.6. Silindrilistes koordinaatides kirjeldatav manipulaator Silindrilises koordinaadistikus töötava manipulaatori töötsooniks on osa õõnsast silindrist. Silindrilises koordinaadistikus töötava manipulaatori kinemaatika näide on joonistel 2.13 ja 2.14. Manipulaatori paigalseisev alus on seotud baaskoordinaadistikuga. Roboti manipulaatori koordinaadistike kohta saab vaadata näiteid veebilehelt http://prime.jsc.nasa.gov/ROV/types.html

    Joonis 2.13. Silindrilises koordinaadistikus töötav manipulaator: a püstteljega töötsoon, b rõhtteljega töötsoon, robotid Versatran, Seiko RT3300 ja Fanuc M300

    Järgnevalt antakse joonisel 2.14 näidatud manipulaatori kinemaatika matemaatiline kirjeldus. Asendivektor

    z

    y

    x

    A

    ppp

    P =r

    (2.46)

    kus

    42

    http://prime.jsc.nasa.gov/ROV/types.html

  • ( )(

    hZp

    RbpRbp

    z

    cy

    cx

    +=

    ++= )++=αααααα

    sinsincoscos

    (2.47)

    A

    z2

    z0

    z1

    x2

    y2

    y0

    x0

    y1

    x1

    Z

    R

    α

    PA

    αc

    α

    h

    b

    y3

    z3

    x3

    Joonis 2.14. Silindrilises koordinaadistikus töötava manipulaatori kinemaatika arvutusskeem Asendivektori komponente kirjeldavaid võrrandeid saab kasutada manipulaatori kinemaatikaülesande lahendamiseks. Niisugust lahendusviisi nimetatakse kinemaatika-ülesande geomeetriliseks lahendamiseks, sest võrrandid leitakse geomeetrilise konstruktsiooni põhjal. Võrrandite keerukus sõltub manipulaatori lülide konfiguratsioonist (vastastikusest asetusest). Põhimõtteliselt võib võrrandite põhjal lahendada nii kinemaatika otsese kui ka pöördülesande. Ainsaks raskuseks on asjaolu, et trigonomeetriliste avaldistega võrrandid osutuvad pöördülesande lahendamisel sageli transtsendentseks ning ei oma ilmutatud üldlahendeid. See aga ei takista võrrandite arvlahendite leidmist. Rotatsioonimaatriksid

    1000cossin0sincos

    01 αα

    αα −=R

    1000cossin0sincos

    12 cc

    cc

    R αααα −

    = (2.48)

    Teisendusmaatriksid

    100000100100

    001

    23

    R

    T

    =

    1000100

    00cossin00sincos

    01 ZT

    αααα −

    =

    1000100

    00cossin0sincos

    12 h

    b

    T cccc

    αααα −

    = (2.49)

    Silindrilises nurkkoordinaadistikus töötava liigendkäega (SCARA-tüüpi) manipulaatori töötsooniks on samuti osa õõnsast silindrist. Seejuures võib silindri telg olla horisontaalne või vertikaalne. Vastavad robotid on joonisel 2.15. SCARA-tüüpi manipulaatori kinemaatika on

    43

  • näha joonisel 2.16. Horisontaalse liigendkäe liikumist kirjeldavad suhteliselt lihtsad võrrandid ning kinemaatika otsene ja pöördülesanne on ilmutatud kujul lahendatavad. Manipulaatori tööorgani asendit tähistab punkt A, mille asukoha saab määrata nii ristkoordinaadistikus 0xyz kui ka silindrilises nurkkoordinaadistikus 0α1α z. 2

    Joonis 2.15. Liigendkäega horisontaal- ja vertikaalteljega silindrilises nurkkoordinaadistikus töötavad robotid

    A

    z0

    z1

    y0

    x0

    Z

    α1 PA

    b

    y3

    z3

    x3

    x1

    y1

    α2

    z2

    x2

    y2

    x

    y

    α1

    L1

    α2

    L2

    xA

    yA

    A

    Joonis 2.16. Liigendkäega silindrilises nurkkoordinaadistikus töötava manipulaatori arvutusskeem Manipulaatori kinemaatika otsene ülesanne lahendatakse järgmise võrrandisüsteemi abil:

    ( )(

    aa

    a

    a

    zzLLyLLx

    =++=++=

    21211

    21211

    sinsincoscos

    ααα )ααα

    (2.50)

    Võrrandid (2.50) võimaldavad lahendada ka kinemaatika pöördülesande, kuid tuleb arvestada, et nurkade α1, ja α2, avaldamine on sealt küllaltki tülikas. Seepärast on kinemaatika pöördülesande lahendamisel otstarbekas lähtuda joonisel 2.17 toodud geomeetrilisest konstruktsioonist.

    44

  • x

    y

    α1e

    L1

    α2e

    L2

    xe

    ye

    A

    c

    dhφ1

    φ2

    φ3

    Joonis 2.17. Kinemaatika pöördülesande geomeetriline lahendamine ning nurkade α ja α1e 2e leidmine tööorgani

    soovitud asendi A (x , y ) korral e e e Pöördülesande geomeetrilisel lahendamisel kirjutatakse joonisel 2.17 näidatud kolmnurkade põhjal järgmised võrrandid:

    222

    221

    22

    dLh

    cLh

    yxr

    dcr

    ee

    −=

    −=

    +=

    +=

    (2.51)

    Kahest viimasest võrrandist saab avaldada abisuuruse c

    rLLrc

    2

    22

    21

    2 −+= (2.52)

    Arvutuste käigus on sobiv leida kõigepealt järgmised nurgad:

    ( )

    ( ) 0kui,arctan0kui,2

    0kui,arctan

    1

    1

    1

    =

    eee

    e

    eee

    xxyx

    xxy

    πϕπϕ

    ϕ (2.53)

    ( )charctan2 =ϕ ( )dharctan3 =ϕ

    Lülide soovitud pöördenurgad α1e ja α2e saab leida järgmiselt:

    211 ϕϕα −=e322 ϕϕα +=e (2.54)

    Kinemaatikaülesande algebraliseks lahendamiseks kasutatakse manipulaatori lülidega seotud koordinaadistike rotatsiooni- ja teisendusmaatrikseid.

    45

  • Koordinaadistik 3 on koordinaadistiku 2 suhtes pööratud 90º võrra ümber z-telje ja seejärel veel 90º võrra ümber x-telje. Rotatsioonimaatriksid

    1000cossin0sincos

    11

    1101 αα

    αα −=R

    1000cossin0sincos

    22

    2212 αα

    αα −=R (2.55)

    Teisendusmaatriksid

    1000100

    00cossin00sincos

    11

    11

    01 hT

    αααα −

    =

    100000100001

    100 223

    r

    T =

    1000100

    00cossin0sincos

    22

    122

    12 b

    r

    Tαααα −

    = (2.56)

    2.7. Sfäärilistes koordinaatides kirjeldatav manipulaator Sfäärilises koordinaadistikus (joonis 2.18) ja sfäärilises nurkkoordinaadistikus (joonis 2.19) töötava manipulaatori töötsooniks on osa õõnsast kerast.

    y

    x

    z

    x

    Joonis 2.18. Sfäärilises koordinaadistikus töötava manipulaatori töötsoon

    46

  • J5 telg

    J3 telg

    J2 telg

    J6 telg

    J4 telg

    J1 telg Alus

    Õlaliiges

    Küünarvars

    Käelaba

    ÕlavarsMehaaniline liides haaratsi ühendamiseks

    Käelaba

    Käsivars

    Kere

    Õlavars

    Õlg

    Joonis 2.19. Sfäärilises nurkkoordinaadistikus töötavad liigendkäega robotid: a firma Mitsubishi 6 liikuvus-

    astmega manipulaator ja b firma Unimation roboti PUMA 560 manipulaator

    A

    z0

    z2

    y0

    x0

    h

    α3

    PA

    r1x2y2

    α1 x3

    r2

    b

    z3

    y3

    y4

    z4

    x4

    aα2 z1

    y1x1

    Joonis 2.20. Sfäärilises nurkkoordinaadistikus töötava liigendkäega manipulaatori arvutusskeem Manipulaatori (joonis 2.20) teine teljestik on esimese suhtes pööratud ümber z-telje 90º, seejärel ümber x-telje 90º ning ümber z-telje nurga α võrra. 2 Koordinaadistike teisendusmaatriksid

    1000010000cossin00sincos

    11

    11

    01

    αααα −

    =T

    10001cossin

    00sincos000

    22

    2212 h

    a

    Tαααα −

    =

    47

  • 1000100

    00cossin0sincos

    11

    111

    23 b

    r

    T−

    =αααα

    100000010010

    100 234 −

    =

    r

    T (2.57)

    Teisendusmaatriksis sisalduva rotatsioonimaatriksi saab leida korrutisega T12

    1cossin0sincos000

    1000cossin0sincos

    010001100

    22

    2222

    2212

    αααααα

    αα−=

    −×=R (2.58)

    Pr

    0 Pr

    4leitakse teisendusmaatriksi ja T04 korrutisena Asendivektor 0. koordinaadistikus

    PTPrr

    404

    0 ⋅= 2.8. Paljulülilised ja paindlülidega manipulaatorid Paljulülilise manipulaatori näide on joonisel 2.21. Lülide suhtelise asendi muutmisega saab manipulaatori tööorgani viia paindlikult igasse soovitud asendisse. Samu võimalusi pakuvad ka paindlülidega manipulaatorid, milles kasutatakse voolu või magnetvälja toimel painduvaid lülisid. Niisuguseid manipulaatoreid siinkohal lähemalt ei käsitleta.

    Joonis 2.21. Paljulülilise manipulaatori ehitus

    48

  • 2.9. Rööpkinemaatikaga manipulaatorid Traditsiooniliselt on ehitatud manipulaatoreid, mille kinemaatika põhineb jadamisi monteeritud lülidel. Seejuures on ahela iga järgmine lüli koos ajamiga selle ahela eelmistele lülidele ja ajamitele koormuseks. Suhteliselt kogukate ajamite paigutamine haaratsi või tööorgani vahetusse lähedusse on aga oluliselt piiranud robotite kinemaatilisi ja dünaamilisi kasutusvõimalusi. Ajamite paigutamiseks kinemaatilise ahela algusesse või ahelas mitme lüli võrra ettepoole on seni rakendatud keeruka kinemaatikaga manipulaatormehhanisme. Nende mehhanismide rakendamine võimaldab küll viia elektromehaanilise energiamuunduri, s.o ajami mootori, haaratsist või tööorganist eemale, kuid manipulaatormehhanismi keerukuse ja suhteliselt suure massi tõttu ei suuda see oluliselt parandada roboti dünaamikat. Uueks suunaks robotite mehaanikas on rööplülidega manipulaatorite kasutuselevõtt. Sel alal võib nimetada manipulaatoreid, mis on saanud tuntuks nimetuste Trepot või Hexapot all, mis eesti keeles tähendavad „kolmjalga” (joonis 2.22) või “kuusjalga” (joonised 2.23 ja 2.24). Samasse manipulaatorite rühma kuulub ka nt firma ABB robot FlexPicker. Rööpkinemaatikaga robotite kohta vt http://www.parallemic.org/Terminology/General.html http://www.parallemic.org/SiteMap.html Rööpkinemaatikaga roboti eelised:

    6 ajamit käitavad ühte kerget lüli, väike inertsimoment, parem dünaamika lülide positsioonimisvead ei liitu suurem jäikus (mehaaniline täpsus) pole liikuvaid ühenduskaableid suurem täpsus, parem liikumise korratavus (repeatability) suurem töökindlus.

    Roboti pilti vt veebilehelt http://www.parallemic.org/Reviews/Review002.html

    Joonis. 2.22. Rööpkinemaatikaga kolmjalgmanipulaator riputatud asendis

    49

    http://www.parallemic.org/Terminology/General.htmlhttp://www.parallemic.org/SiteMap.htmlhttp://www.parallemic.org/Reviews/Review002.html

  • Keraliigend S

    Keraliigend S Seisev alus

    Liikuv platvorm

    Translatsiooni- paar P

    Joonis 2.23. Kaheksatahuline kuuejalgne platvorm (octahedral hexapod) ehk Stewarti platvorm

    Pilti vt veebilehelt http://www.parallemic.org/Reviews/Review012.html

    Joonis 2.24. Kuusjalgmanipulaator (Hexapod), selle lülide liigend ja liikuvale alusele paigutatud manipulaator 1965. a ilmus M. Stewarti kuulsaks saanud artikkel 6 liikuvusastmega platvormi kohta, mida hakati kasutama lennusimulaatorites (joonis 2.25). Artiklis esitatud mehhanism erines aga märgatavalt kaheksatahulisest kuusjalast (octahedral hexapod), mida hiljem hakati nimetama Stewarti platvormiks. Kaheksatahulise kuusjala leiutajaks peetakse ka USA inseneri Klaus Cappelit, kes konstrueeris 6 liikuvusastmega vibreerimismasina (joonis 2.26). Kaheksatahuline kuusjalg on seni leidnud suurimat rakendust lennusimulaatorites. Stewarti patenteeritud masina kasutusala aitas kaasa ka autori nime tuntuks saamisele.

    50

    http://www.parallemic.org/Reviews/Review012.html

  • Joonis 2.25. Stewarti poolt kirjeldatud lennusimulaator ehk tegelik Stewarti platvorm

    Joonis 2.26. USA inseneri Klaus Cappeli patenteeritud (1964) 6 liikuvusastmega vibreerimismasin Kolmjalgmanipulaatori kinemaatika kirjeldus. Kolmjalgmanipulaatori kinemaatikast annab ülevaate joonis 2.27. Koordinaadistik on valitud rippasendis manipulaatori jaoks pööratud kujul, s.t z-telje suund on tavapäraselt alt üles. Pöörlevate lülidega manipulaatori ajamite väljundsuuruseks on võlli pöördenurgad. Antud juhul on tegemist kolme ajamiga, mis käitavad manipulaatori lülisid HA, HB ja HCB . Kõik lülid pöörlevad vertikaaltasanditel, mis on üksteise suhtes ruumi horisontaaltasandil jaotatud ühtlaselt, s.t nihutatud võrdsete pöördenurkade 2π/3 võrra. Manipulaatori lülid (hoovad) HA, HBB ja HC on ühendatud haaratsi kinnituslüliga G konstantse ja tavaliselt võrdse pikkusega varraste VA, VB, V abil. Põhimõtteliselt võivad varraste pikkused ka erineda, s.t VB C A ≠ VBB ≠ V . C Roboti juhtimiseks tuleb lahendada kinemaatika otsene ja pöördülesanne. Kinemaatika otsene ülesanne seisneb ajami etteantud asendikoordinaatide (ajami võlli või hoobade HA, HB ja HCB pöördenurga) järgi manipulaatori haaratsi või tööorgani koordinaatide leidmises. Ülesande muudab keerukaks asjaolu, et kõigi lülide koordinaadistikud erinevad ruumi ristkoordinaadistikust. Kinemaatikaülesande lahendamisel võib nii ajami hoobasid HA, HBB ja H kui ka vardaid VC A, VB, V tähistada vektoritega. CB

    51

  • x0

    z0

    y0

    Hx

    Hy

    Hz

    A0

    A1C0

    B1

    B0

    C1

    H

    x1z1

    y1

    VAVB

    VC

    HA

    HB

    HC

    α

    γ

    β

    Joonis 2.27. Kolmjalgmanipulaator ristkoordinaadistikus Juhul kui on teada (ette antud) lülide algvektorite A0, B , C0 0 pikkused ja pöördenurgad (0, 2π/3 ja 4π/3), ajamihoobade (s.o ajami väljundvõllide) pöördenurgad α, β, γ ning varraste VA, VB, VCB pikkused, saab lahendada kinemaatika otseülesande ja leida haaratsi asukoha ruumi ristkoordinaadistikus x , y0 0, z . 0 Juhul kui on teada (ette antud) haaratsi asukoht ruumi ristkoordinaadistikus, varraste VA, VB, V

    B

    C ning ajamihoobade ja algvektorite pikkused, saab lahendada kinemaatika pöördülesande ja arvutada ajamihoobade pöördenurgad α, β, γ. Algvektorid ehk hoobade pöördetsentrite asendivektorid:

    ( )(

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡⋅⋅

    =0

    3/4cos3/4sin

    0

    0

    0 ππ

    CC

    Cr

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    0

    0

    00 AAr

    ( )( )

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡⋅⋅

    =0

    3/2cos3/2sin

    0

    0

    0 ππ

    BB

    Br

    ) (2.59)

    Kui lugeda, et teise ja kolmanda jalaga seotud koordinaadistikud on esimese jala koordinaadistiku suhtes pööratud nurkade 2π/3 ja 4π3 võrra, võib need taandada esimese lüli koordinaadistikku rotatsioonimaatriksite abil.

    ( ) ( )( ) ( )

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡ −=

    000034cos34sin034sin34cos

    00 ππ

    ππRAC

    ( ) ( )( ) ( )

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡ −=

    000032cos32sin032sin32cos

    00 ππ

    ππRAB

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    100010001

    00 R

    AA

    (2.60)

    Kuna teisendatavate koordinaadistike alguspunktid langevad kokku, siis on vastavad teisendusmaatriksid

    52

  • ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    =

    1000010000100001

    00T

    AA

    ( ) ( )( ) ( )

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎡ −

    =

    100001000032cos32sin0032sin32cos

    00

    ππππ

    TAB (2.61)

    ( ) ( )( ) ( )

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎡ −

    =

    100001000034cos34sin0034sin34cos

    00

    ππππ

    TAC

    Kuna esimene lüli taandatakse tema endaga seotud koordinaadistikku, siis võrdub vastav rotatsioonimaatriks ühikmaatriksiga ning alguspunkti nihkevektor 0-ga. Roboti kõigi jalgade esimese liikuva lüliga seotud koordinaadistiku võib taandada sama jala liikumatu lüli koordinaadistikku. Seejuures saab leida vastavad rotatsioonimaatriksid

    ⎥⎥⎥

    ⎢⎢⎢

    −=

    0sincos0cossin100

    01

    ααααRAA (2.62)

    ⎥⎥⎥

    ⎢⎢⎢

    −=

    0sincos0cossin100

    01

    ααααR

    ⎥⎥⎥

    ⎢⎢⎢

    −=

    0sincos0cossin100

    01

    γγγγRCC

    ja koordinaadistike nihkevektorid

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    0

    0

    00 AAr

    (2.63)

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    0

    0

    00 BBr

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    0

    0

    00 CCr

    Rotatsioonimaatriksitest ja alguspunkti nihkevektoritest saab moodustada teisendusmaatriksid

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    −=

    100000sincos

    0cossin0100

    001 αα

    αα ATAA

    (2.64)

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    −=

    100000sincos

    0cossin0100

    001 γγ

    γγ CTCC

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    −=

    100000sincos

    0cossin0100

    001 ββ

    ββ BTBB

    Iga jala esimese pöörleva lüliga seotud koordinaadistiku x , y , z1 1 1 võib taandada algkoordinaadistikku x0, y0, z0 kirjeldatud teisendusmaatriksite , , ja

    , , vastava korrutamisega. TAA

    00 T

    AB

    00 T

    AC

    00

    TAA01 T

    BB01 T

    CC

    01

    53

  • ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    −×

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    =⋅=

    100000sincos

    0cossin0100

    1000010000100001

    001

    00

    01 αα

    αα ATTT AA

    AA

    AA

    ( ) ( )( ) ( )

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    −×

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎡ −

    =⋅=

    100000sincos

    0cossin0100

    100001000032cos32sin0032sin32cos

    001

    00

    01 ββ

    ββππππ

    BTTT BB

    AB

    AB

    (2.65)

    ( ) ( )( ) ( )

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    −×

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎡ −

    =⋅=

    100000sincos

    0cossin0100

    100001000034cos34sin0034sin34cos

    001

    00

    01 γγ

    γγππππ

    CTTT CC

    AC

    AC

    Kirjeldatud teisendused võimaldavad määrata punktide A , B ja C1 1 1 asukoha ruumi koordinaadistikus x0, y , z0 0. Roboti otsese kinemaatikaülesande edasiseks lahendamiseks tuleb arvestada, et punktid A1, B ja CB1 1 on seotud haaratsi asukohta tähistava punktiga G neid punkte ühendavate konstantse pikkusega varraste abil. Seega moodustub ruumis tetraeeder (joonis 2.28), mille neljast otspunkti asukohavektorist on teada kolm ning lisaks sellele veel tetraeedri kõigi külgede pikkused. Olgu roboti vastavate jalgadega seotud varraste pikkused VA, VBB, VC. Haaratsi asukohta tähistab vektor , mille teljesihilised komponendid on GG

    r, Gx y, Gz.

    x0

    z0

    y0

    Gx

    Gy

    Gz

    B1

    C1

    A1

    G

    0

    VA

    VC

    VB

    HA

    HB

    HC

    Joonis 2.28. Haaratsi asukoha määramine tetraeedri kolme otspunkti ja küljepikkuste järgi

    54

  • Haaratsi asendivektorGr

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    z

    y

    x

    GGG

    Gr

    (2.66)

    Varraste pikkused

    ( ) ( ) ( )212121 AGAGAGA zzyyxxV −+−+−=

    ( ) ( ) ( )212121 BGBGBGB zzyyxxV −+−+−= (2.67)

    ( ) ( ) ( )212121 CGCGCGC zzyyxxV −+−+−= Ajamihoobade ette antud või eelnevalt arvutatud asendikoordinaatide x , y zA1 A1 A1, x , y z ja x , y zB1 B1 B1 C1 C1 C1 järgi saab võrrandisüsteemi lahendamisel leida haaratsi otsitavad koordinaadid xG, yG, zG, mis on ühtlasi haaratsi asendivektori teljesihilised komponendid. Kinemaatika pöördülesande lahendamine rööpkinemaatikaga roboti puhul. Üldjuhul on kinemaatika pöördülesande lahendamine keerulisem kui otseülesande lahendamine. Haaratsi asendivektori võib esitada kolme vektorvõrrandiga

    BC

    BB

    AA

    VHG

    VHG

    VHG

    rrr

    rrr

    rrr

    +=

    +=

    +=

    (2.68)

    Kinemaatika pöördülesande puhul on ette antud haaratsi asendivektor G ning seda ajamihoobadega ühendavate varraste pikkused. Nende andmete põhjal tuleb leida ajamihoobade asendivektoreid kirjeldavad pöördenurgad α, β, γ.

    r

    Punkt A1 asub kera pinnal, mille keskpunkt on määratud haaratsi asendivektoriga ja raadius varda VA pikkusega. Punkti asukoht on määratud kera pinna ja ajamihoova HA liikumist kirjeldaval ringjoonel. Sarnaselt sellega asuvad ka punktid B ja C1 1 sama keskpunktiga kerade pindadel, kusjuures kerade raadiused on vastavalt VB või VCB

    )

    )

    )

    . Juhul kui varraste pikkused on ühesugused, asuvad kõik kolm punkti ühe ja sama kera pinnal, kuid nende asukohta määratakse erinevate ajamihoobade liikumist kirjeldavate ringjoonte ja kera pinna lõikepunktiga. Selle kirjelduse alusel saab välmida ka kinemaatika pöördülesande lahendamise algoritmi. Ajamihoobade liikumist kirjeldavad punktid A1, B ja C1 1 asuvad sfäärilistel pindadel

    ( ) ( ) ( 2121212 AGAGAGA zzyyxxV −+−+−=

    ( ) ( ) ( 2121212 BGBGBGB zzyyxxV −+−+−= (2.69)

    ( ) ( ) ( 2121212 CGCGCGC zzyyxxV −+−+−= Teisalt asuvad need punktid kolmel erineval ringjoonel (ehk ka teise kera pinnal)

    55

  • ( ) ( ) ( 2012012012 AAAAAAA zzyyxxH −+−+−= )

    )

    )

    )

    )

    ( ) ( ) ( 2012012012 BBBBBBB zzyyxxH −+−+−= (2.70)

    ( ) ( ) ( 2012012012 CCCCCCC zzyyxxH −+−+−= Võrrandeid saab lahendada paarikaupa, kusjuures kolmanda tundmatu suuruse saab määrata lisatingimuste esitamisega

    ( ) ( ) ( )( ) ( ) ( 2012012012

    21

    21

    21

    2

    AAAAAAA

    AGAGAGA

    zzyyxxH

    zzyyxxV

    −+−+−=

    −+−+−= (2.71)

    Näiteks võib esimese jala liikumist kirjeldavate võrrandite puhul koordinaatide vastava valiku tõttu väita, et x = 0, x = 0 ja z = 0. Selle tulemusena võrrandisüsteem lihtsustub A0 A1 A0

    ( ) ( ) ( )212122 AGAGGA zzyyxV −+−+=

    ( ) ( 212012 AAAA zyyH +−= αsin1 ⋅= AA Hz, kus Teise jala puhul kehtivad sfääride võrrandid, kus z = 0. B0

    ( ) ( ) ( )( ) ( ) ( 2012012012

    21

    21

    21

    2

    BBBBBBB

    BGBGBGB

    zzyyxxH

    zzyyxxV

    −+−+−=

    −+−+−=

    ) (2.72)

    Koordinaatide vastava valiku tõttu võrrandisüsteem lihtsustub ning võrrandites saab kasutada asendusi

    ( )( )

    03/2cos3/2sin

    0

    00

    00

    =⋅=⋅=

    B

    B

    B

    zByBx

    ππ ( )

    (⎥⎥⎥

    ⎢⎢⎢

    ⎡⋅⋅

    =0

    3/4cos3/4sin

    0

    0

    0 ππ

    BB

    B ehk )

    )

    (2.73)

    ( )(

    03/2cos3/2sin

    0

    00

    00

    =⋅=⋅=

    C

    C

    C

    zCyCx

    ππ

    ehk ( )(

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡⋅⋅

    =0

    3/4cos3/4sin

    0

    0

    0 ππ

    CC

    C ) (2.74)

    Hoobade z-koordinaadid on lihtsalt arvutatavad valemitega

    γβα

    sinsinsin

    1

    1

    1

    ⋅=⋅=⋅=

    CC

    BB

    AA

    HzHzHz

    (2.75)

    56

  • 2.10. Liikurroboti kinemaatika Liikurrobotiks võib olla nii pinnal liikuv, lendav kui vedelikus ujuv robot. Pinnal liikuva roboti liikumismehhanismiks on ratastega veokid, mitmesugused jalg- või roomikmehhanismid. Veovankritega robotid jagunevad omakorda sõltuvalt rataste arvust ja pöördemehhanismist järgmiselt:

    • kolmerattaline, ühe pööratava juhtrattaga vanker (üks või kaks vedavat ratast) • rattapaari pöörava teljega vanker • diferentsiaalmehhanismiga kahe või nelja veorattaga vanker • mitme sõltumatult juhitava rattaga vanker, mis mõnikord võib ka kohapeal pöörelda • nelja rattaga Ackermanni pöördemehhanismiga vanker (Ackermanni mehhanism on

    tuntud auto pöördemehhanismi näol, mille puhul sisemine ratas pöördub rohkem kui välimine).

    Ratasveoki pööramist iseloomustab joonis 2.29, millelt on näha, et kurvis pööramisel läbivad rattad erineva teepikkuse. Kurvi sisemine ratas liigub vähem. Seetõttu saab kurvi läbida vaid juhul, kui veorattad pöörlevad eri kiirusega või kui üks ratastest kurvis libiseb. Rataste eri kiirusega pöörlemine saavutatakse diferentsiaalmehhanismiga. Jäigalt ühendatud rattapaari puhul hakkab kurvi sisemine ratas kohapeal pöörlema ehk maapinna suhtes libisema vastu liikumissuunda, väline ratas aga kaotab veojõu ning hakkab liikumissuunas maapinnal libisema.

    Pöördetelg ja pöördetsenter

    b

    S2 = (R+b)θ

    S1 = R θ θ R

    Joonis 2.29. Rattapaari pööramine

    57

  • Vankri esitelje rattapaari pööramine. Esitelje pööramine on tuntud hobuvankrite kasutu-selevõtu ajast. Põhimõte on lihtsuse tõttu kasutusel ka tänapäeval. Niisugune pöördemehhanism on geomeetriliselt täpne. Selle mehhanismi puhul langevad mõlema ratta pöördetsentrid kokku. Puuduseks on mehhanismi kohmakus (vajab pööramiseks palju ruumi). Pööravat telge on väga tülikas vankriga kokku sobitada. Suurema pöördenurga (väiksema pöörderaadiuse) saavutamiseks peab telg pöörduma vankri alla. Seepärast on niisuguse pöördemehhanismiga vankrite esirattad sageli väiksema läbimõõduga (et vanker ei peaks olema liiga kõrge). Põhimõtteliselt saab vankrit pöörata ka tagatelje rattapaari pööramisega, kuid sel juhul halveneb oluliselt vankri juhitavus edasi liikumisel. Mõnda vankri pööramise mehhanismi on näidatud joonisel 2.30. Sõiduki pööramise teiseks võimaluseks on kereliigend. Kere keskliigendiga vanker on joonisel 2.30 a. Kaheosalisel vankril saab kasutada lihtsat pöördemehhanismi, kuid liikuva ja muutuva kujuga kere tõttu on vankrit kasutada tülikas. Kõik pöörava teljega vankrid on kurvis liikumisel ebastabiilsed.

    Rattapaari telje liigendiga pööramine

    Esirataste kooskõlastatud ehkAckermann’i tüüpi pööramine

    Kõikide rataste täpne sõltumatu pööramine

    Pöördetsentrid

    Pöördetsentrid

    a b c

    Joonis 2.30. Vankri pööramise mehhanisme Rudolf Ackermann sõnastas 1816. a ideaalse pöördemehhanismi talitluse tingimuse - rataste vertikaaltasandid peavad olema kurvi pööramisraadiusega risti - ning töötas välja rataste pöördemehhanismi, mis on tänapäeval autode juures laia kasutust leidnud. Joonisel 2.31 a näidatud neljalüliline suletud liigendmehhanism (auto roolimehhanism) tagab rataste pöörderaadiuste tsentrite kokkulangevuse. Vastupidisel juhul, kui pööravad rattad on paralleelsed ja pöörderaadiuste tsentrid ei lange kokku (joonis 2.31 b), tekib rataste külglibisemine, sellest tingitud suurem kulumine ja sõidu ebastabiilsus.

    58

  • Pöördetsenter

    Ackermanni pöördemehhanism

    R1

    R2

    a b

    Joonis 2.31. Ackermanni mehhanism (a) ja sobimatu pööramine paralleelsete ratastega (b) Neljarattaliste sõidukite kõigi rataste juhtimine. Kõigi rataste juhtimine tagab sõidukile parima manööverdatavuse. Kõigi rataste sõltumatu juhtimise puhul saab luua väga paindliku pöördemehhanismi, mille abil võib vankri ka kohapeal pöörlema panna. Robotveokite puhul on niisugune juhtimisviis laialt kasutusel. Seejuures eristatakse mitmesuguseid järgnevalt loetletud juhtimisstrateegiaid.

    • Proportsionaalne juhtimine Ackermanni kaksikmehhanismiga. Sõiduki esi- ja tagarattaid pööratakse võrdeliselt ratta pöörderaadiusega.

    • Mitteproportsionaalne juhtimine viivitusega, mil tagarattaid hakatakse pöörama alates esirataste kindlast pöördenurgast.

    • Juhtimine diferentsiaalmehhanismiga, mil kurvi sise- ja välisrataste eri kiirused tagavad sõiduki pööramise.

    • Kohtpööre kõigi rataste juhtimisega, mil esi- ja tagarattaid pööratakse sama nurga võrra, kuid eri suundades.

    • Kohtpööre reverseeritava diferentsiaalmehhanismiga, mil sõiduki sise- ja välisrattad pöörlevad kurvis eri suundades.

    • Külg-rööpliikumine (dog walk steering ehk koera kõnni juhtimine), mil esi- ja tagarattaid pööratakse samas suunas ja sõiduk liigub külgsuunas.

    Vankriga liikurrobotite pöördemehhanismide kohta on USA Carnegie Melloni ülikoolis 2001. aastal valminud doktoritöö Analytical Configuration of Wheeled Robotic Locomotion. Vankri pööramist erinevate mehhanismidega on näidatud joonisel 2.32. Kui vankri pööramine toimub diferentsiaalmehhanismiga ning rattaid seejuures ei pöörata, tekkib kurvi läbimisel rataste külglibisemine. Nelja ratta juhtimisega masinateks on paljud põllumajandusmasinad, ehitusmasinad, erisõidukid ja liikurrobotid.

    59

  • Pööre diferentsiaal- mehhanismiga

    Pööre Ackermanni kaksikmehhanismiga

    Kohtpööre kõigi rataste juhtimisega

    Kohtpööre reverseeritava diferentsiaalmehhanismiga

    Joonis 2.32. Sõiduki vankri pööramine erinevate mehhanismidega Dünaamilise juhtimise probleemid. Kurvis pööramisel mõjuvad sõidukile inertsjõud, mis omakorda põhjustavad ratta külglibisemise. Mida rohkem ratast pöörata, seda suurem on libisemine. Mida suurem on libisemine, seda suurem on libisemisega kaasnev vastujõud, mis kompenseerib pööramisel tekkiva tsentrifugaaljõu. Seejuures on kurvis liikumisel siseratta pöördenurk ja libisemine suuremad kui välisrattal. Samas on aga välisratta koormus (jõud) suurem kui siseratta koormus. Kurvis liikumise probleeme ja jõudude toimet iseloomustab joonis 2.33. Rattale mõjuvad ajami veojõud, sõiduki inertsjõud ja libisemise takistusjõud. Ühtlasel sirgjoonelisel liikumisel on veojõud Fv ja hõõrdumise takistusjõud Fv samas sihis. Kurvis liikumisel toimib lisaks tsentrifugaaljõud Fts, mis tõukab sõidukit ratta külje suunas. Kui ratas on pööratud otse sõidusuunda (joonis 2.27, a), siis tõukab veojõu ja tsentrifugaaljõu koostoime sõidukit kurvist välja. Ratta pöördenurga suurendamisel (b ja c) võib saavutada olukorra, mil summaarne jõud mõjub sõidu sihis. Kuna libisemistingimused sõltuvad teekatte ja ratta hõõrdetegurist (ka teepinna profiilist), mis omakorda on väga muutlik suurus, siis on ka sõiduki veojõudu raske määrata. Seetõttu on jõuvektorite suunad pidevalt muutuvad ning võib tekkida oht sõiduki kurvist väljapaiskumiseks.

    a b

    Fh

    Fv

    Fts

    Fh

    Fv

    Fts

    c

    Fh

    Fv

    Fts

    α α

    Joonis 2.33. Ratta pööramine kurvis liikumisel: ratas on sõidusuunas a, ratast on pööratud tsentrifugaaljõudude

    kompenseerimiseks sõidusuunast kõrvale b, c

    60

  • Väikeste, lihtsate ja odavate robotite puhul on pööramise ja manööverdamise hõlpsamaks muutmisel mõnikord kasu mitmes suunas veerevatest ratastest (multi-directional wheel) (joonis 2.34).

    Joonis 2.34. Mitmes suunas veerevate rataste näiteid Ratasveokiga liikurrobotite puhul on probleemiks liikumine pehmel või ebatasasel pinnal, sest ratta erisurve pinnasele on suhteliselt suur. Veoki erisurve vähendamiseks pinnasele kasutatakse roomikmehhanisme. Ebatasasel pinnal liikumiseks sobivad paremini jalgmehhanismid. Ka ratasveokeid saab valmistada ebatasasel pinnal liikumiseks, kuid see eeldab veoki erikonstruktsiooni, mis võimaldab ratastel kopeerida pinna ebatasasusi (joonis 2.35).

    Joonis 2.35. Ebatasasel pinnal liikumiseks ettenähtud ratasveok Roomikmasinate juhtimine. Roomikmasinaid juhitakse piduritega. Pidurdatakse seda roomikut, mille poole tahetakse pöörata. Pidurdamisel lahutatakse vastavat roomikut vedava ajami sidur. Pidureid kasutatakse ka ratasliikurite pööramiseks, kui nende liikumisvajadus on suhteliselt väike (nt ehitus-, tõstemasinad). Piduritega pööratavatest masinatest annab ülevaate joonis 2.36. Mõnikord rakendatakse sellist pööramisviis ka liikurrobotites.

    61

  • Joonis 2.36. Piduritega pööratavad roomik- ja ratasmasinad (Uwe Bergi fotod Internetist) Kõndivad robotid ehk jalgadega liikurrobotid. Niisuguseid roboteid võiks nimetada ka loodusest kopeeritud robotiteks. Seejuures eristatakse roboteid jalgade arvu järgi:

    • ühejalgsed ehk keksivad robotid • kahejalgsed • kolmejalgsed • neljajalgsed • kuuejalgsed • kaheksajalgsed • suure jalgade arvuga robotid ehk sajajalgsed robotid.

    Ühe- ja kahejalgsete robotite liikumisprobleemidele lisandub tasakaalu probleem. Üldjuhul nõuab nende robotite püstiasendis hoidmine tasakaalu dünaamilist juhtimist. Kolmejalgseid roboteid valmistatakse harva, sest nende jalgade kinemaatika pole edasiliikumiseks sobiv (ühe jala liigutamisel tekkib tasakaaluprobleem). Kolmejalgsed robotid sobivad paremini roomamiseks või ronimiseks. Kahejalgse kõndiva mehhanismi sammufaase näeb joonisel 2.37.

    1 432

    II I II I III II I

    Joonis 2.37. Kahejalgse kõndiva mehhanismi sammufaasid Samm algab keha raskuse ülekandmisega sirgele jalale (II) ning vaba jala liigutamisega kõndimise suunas. Sammu teises faasis on vaba jalg saavutanud oma lõppasendi. Kolmandas faasi toetatakse see maha. Neljandas faasis toimub keha raskuse ülekandmine jalale I. Edasipidi liikumised korduvad ning vaba jalg II alustab liikumist kõndimise suunas.

    62

  • Kahe- ja neljajalgseid inim- ja loomanäolisi roboteid näeb joonisel 2.38.

    a b c

    Joonis 2.38. Kahe- ja neljajalgsete robotite näited: firma Honda kahejalgne (bipod) robot Asimo (a) ja firma

    RoboScience neljajalgne (quadruped, tetrapod) robotkoer Robodog (b, c) Kõndiva nelja- ja kuuejalgse roboti sammumehhanismidest annab ülevaate joonis 2.39.

    Joonis 2.39. Kõndiva nelja- ja kuuejalgse roboti sammumehhanismid Suurem jalgade arv tagab veokile parema stabiilsuse ja suuremad võimalused ebatasasel pinnal liikumiseks. 8-jalgne sarnaneb 6-jalgse robotiga. Enam kui 8 jalaga roboteid kasutatakse harva ja üksnes eriotstarbel. Nende liikumine sarnaneb aga rohkem roomajate kui jalgadel kõndivate imetajate liikumisega. Jalapaaride pööramisega 10-jalgset robotit (vrd vankri telje pööramisega) näeb joonisel 2.40. Mõnikord on otstarbeks omavahel kombineerida nii rattaid kui jalgu. Sel juhul saadakse jalgadega ja ratastega hübriidveok.

    63

  • Joonis 2.40. 10-jalgne jalapaaride pööramisega robot Jalgadega ja ratastega hübriidveok. Jalad võimaldavad paremini ületada takistusi. Rataste ehitus ja käitamine on lihtsam. Näited taolistest veokitest on joonisel 2.41.

    Joonis 2.41. Jalgadega ja ratastega hübriidveokid Kolmejalgne roniv robot. Kolmejalgse ronimismehhanismi kinemaatikat näeb joonisel 2.42. Mehhanismi kaks jalga hoiavad mehhanismi kinni, samal ajal liigub kolmas jalg uude kinnituspunkti. Jalgade liikumine tagatakse jalalülide pööramisega.

    Kinnitunud jalg 1 Kinnitunud jalg 2

    Kinnituskoht 3Vaba jalg 3

    Jalalülid

    Jalgade kinnislüli

    Joonis 2.42. Ronimismehhanism

    64