Upload
nguyenkien
View
225
Download
6
Embed Size (px)
Citation preview
Robotika
Slavko Kocijančič
Študijsko gradivo za študente Pedagoške fakultete v Ljubljani
Ljubljana, 2001, 2010, 2016
Robotika Stran 1
1 POVEZAVA RAČUNALNIKA Z ZUNANJIM SVETOM ............................................................ 5
1.1 RAČUNALNIK KOT DIGITALNA NAPRAVA .................................................................................... 5
1.2 DVOJIŠKI ZAPIS IN VZPOREDEN PRENOS PODATKOV .................................................................. 5
1.3 IZMENJAVA PODATKOV MED RAČUNALNIKOM IN OKOLICO ...................................................... 6
1.4 RAČUNALNIŠKI MERILNO KRMILNI VMESNIKI ............................................................................... 8
1.6 NALOGE ......................................................................................................................................... 9
2 DIGITALNI IZHOD ........................................................................................................................ 10
2.1 DIGITALNI IZHOD KOT VIR NAPETOSTI ..................................................................................... 10
2.2 PRIMERI UPORABE DIGITALNEGA IZHODA ................................................................................... 11
2.2.1 VKLOP PORABNIKA S TRANZISTORJEM ......................................................................................... 11
2.2.2 PULZNO KRMILJENJE ELEKTRIČNE MOČI ...................................................................................... 14
2.2.3 VKLOP PORABNIKA Z RELEJEM ..................................................................................................... 15
2.2.4 INTEGRIRANA VEZJA ZA VKLOP PORABNIKA ................................................................................ 16
2.2.5 ZAMENJAVA SMERI TOKA Z RELEJEM ........................................................................................... 17
2.2.6 ZAMENJAVA SMERI TOKA S TRANZISTORJI ................................................................................... 19
2.2.7 INTEGRIRANA VEZJA ZA ZAMENJAVO SMERI TOKA ...................................................................... 20
2.3.8 PRINCIP DELOVANJA IN MODELI KORAČNIH MOTORČKOV ........................................................... 20
3 DIGITALNI VHOD ......................................................................................................................... 25
3.1 PREVERJANJE LOGIČNIH STANJ Z DIGITALNIM VHODOM ........................................................... 25
3.2 PRIMERI UPORABE DIGITALNEGA VHODA .................................................................................... 26
3.2.1 SVETLOBNO OBČUTLJIVA TIPALA ................................................................................................. 26
3.2.2 INDUKTIVNO STIKALO .................................................................................................................. 29
3.2.3 MAGNETNO STIKALO - HERMETIČNI KONTAKTNIK ....................................................................... 30
3.2.4 KOMPARATOR NAPETOSTI ............................................................................................................ 31
4 ANALOGNI IZHOD ........................................................................................................................ 33
4.1 ANALOGNI IZHOD KOT VIR NAPETOSTI ........................................................................................ 33
4.2 PRIMERI UPORABE ANALOGNEGA IZHODA ................................................................................... 35
4.2.1 EMITORSKI SLEDILNIK KOT OJAČEVALNIK MOČI .......................................................................... 36
4.2.2 OJAČEVALNIK MOČI Z OPERACIJSKIM OJAČEVALNIKOM IN TRANZISTORJEM .............................. 37
4.3 SPREMEMBA NAPETOSTNEGA OBMOČJA ANALOGNEGA IZHODA................................................ 38
5 ANALOGNI VHOD ......................................................................................................................... 40
5.1 ANALOGNI VHOD KOT VOLTMETER .............................................................................................. 40
5.2 PRIMERI UPORABE ANALOGNEGA VHODA .................................................................................... 42
Robotika Stran 2
__________________________________________________________________________________
5.2.2 MERJENJE POMIKOV Z UPOROVNIM POTENCIOMETROM ............................................................... 42
6 UVODNE BESEDE K ROBOTIKI ................................................................................................ 44
7 SESTAV IN ARHITEKTURA ROBOTOV .................................................................................. 46
7.1 OSNOVNE ENOTE ROBOTA ............................................................................................................. 46
7.2 ELEMENTI ROBOTSKEGA MANIPULATORJA ................................................................................. 46
7.3 OBLIKE ROBOTSKIH ROK ............................................................................................................... 47
7.5 ROBOTSKO ZAPESTJE..................................................................................................................... 50
8 KINEMATIKA ROBOTSKEGA MANIPULATORJA ............................................................... 52
8.1 KINEMATIKA OSNOVNIH OBLIK ROBOTSKIH ROK ....................................................................... 52
8.2 HOMOGENE TRANSFORMACIJE ..................................................................................................... 56
8.2.1 ROTACIJE ...................................................................................................................................... 56
8.2.2 ZAPOREDJE ROTACIJ ..................................................................................................................... 58
8.2.3 ROTACIJE IN TRANSLACIJE............................................................................................................ 59
8.2.4 ZGLEDI UPORABE HOMOGENIH TRANSFORMACIJ ......................................................................... 61
8.2.5 REŠEVANJE INVERZNEGA PROBLEMA S HOMOGENIMI TRANSFORMACIJAMI ................................ 63
8.2.6 LOČITEV INVERZNE NALOGE NA ROTACIJSKI IN TRANSLACIJSKI DEL .......................................... 64
8.2.7 ZGLED REŠEVANJA INVERZNE NALOGE ........................................................................................ 65
9 KRMILJENJE ROBOTSKEGA MEHANIZMA ......................................................................... 69
9.1 NEZVEZNO KRMILJENJE POSAMEZNEGA SKLEPA ........................................................................ 69
9.2 ZVEZNO KRMILJENJE POSAMEZNEGA SKLEPA ............................................................................ 71
9.2.1 IDEALIZIRANA OBRAVNAVA PD IN PID KRMILJENJA ................................................................... 71
9.2.1 EKSPERIMENTALNI REZULTATI S PD IN PID KRMILJENJEM ......................................................... 73
9.3 KRMILJENJE ROBOTA Z DINAMIČNIM MODELOM ........................................................................ 77
10 MERILNIKI V ROBOTIKI .......................................................................................................... 78
10.1 TIPALA POLOŽAJA ROBOTSKEGA MANIPULATORJA .................................................................. 78
10.1.1 RESOLVER ................................................................................................................................... 78
10.1.1 DIGITALNI KOTNI ODJEMNIK ...................................................................................................... 79
10.1 TIPALA ZA ZAZNAVANJE STANJA OKOLICE ROBOTSKEGA MANIPULATORJA .......................... 79
10.1.4 MERILNA LETEV ......................................................................................................................... 80
10.2.1 DIGITALNI KOTNI ODJEMNIK S PRIRASTOM ................................................................................ 81
10.2.2 KODIRANI DIGITALNI KOTNI PRETVORNIK ................................................................................. 82
10.2.3 MERJENJE ZASUKA Z INDUKTIVNIM STIKALOM .......................................................................... 83
Robotika Stran 3
U V O D
Računalniško vodeni procesi so postali sestavni del vsake sodobne tehnologije. Računalnik v
proizvodnji krmili stroje, robote, tekoči trak in druge naprave. Računalniško vodeni merilni sistemi
vodijo in zbirajo podatke o lastnostih in kvaliteti izdelkov, zbirajo podatke o stanju proizvodne enote,
zalogah, okvarah itd. V integriranih proizvodnih sistemih so računalniki med seboj povezani v mrežo,
preko katere računalniki iz nivoja neposredne proizvodnje posredujejo podatke računalnikom v
vodstveno upravljavskem delu tovarne.
Vedno več naprav v našem vsakdanjem okolju deluje na osnovi programabilnih elektronskih
komponent. V ozadju teh naprav je mikroprocesor opremljen s pomnilnikom in vhodno-izhodnimi
enotami, ki krmilijo motorčke, grelnike, svetila…, za njihovo zanesljivost delovanja pa poskrbijo
elektronski merilniki. Kadar se kombinirajo mehanika, elektronika in je obje programsko podprto, tej
kombinaciji tehniških disciplin rečemo mehatronika.
Posebno privlačno področje je robotika, s katero se lahko prvič neposredno srečajo učenci višjih
razredov osnovne šole. Sorazmerno poceni računalniški vmesnik lahko krmili preproste enosmerne
motorje, ki premikajo posamezne člene robotske roke. Le to lahko sestavimo z zbirkami FISCHER
TECHNIK, LEGO ali jo izdelamo sami. Zlasti slednje je cenovno ugodnejše, saj so mikrokrmilniški
sistemi kot je Arduino postali zelo poceni. Z bolj zahtevne projekte bomo morda posegli po
mikroračunalniku, kot je Raspberry Pi. Ne glede na to, ali gradimo svoj robotski sistem na temelju
mikrokrmilnika, ali uporabimo nadgradnjo izbranega mikrokrmilnika (kot je Arduino) ali vzemo
mikroračunalnik (Raspberry Pi), v študijskem gradivu za programabilno enoto uporabljamo izraz
»računalnik«.
Študijsko gradivo sestavljajta dve enoti: računalnik v stiku z okolico in robotika. Vsebina je
interdisciplinarna, saj se prepletajo računalništvo, elektronika, fizika in tehnika. Študentu bo koristilo
nekaj osnovnega znanja iz teh področij, ni pa hudo, če je znanje pomanjkljivo, saj obravnavo vsakega
računalniško vodenega procesa spremlja razlaga, ki je usmerjena k praktičnem razumevanju.
Namenoma sem se izogibal teoretičnih prijemov in zapletenim matematičnim analizam. Primeri
računalniško vodenih procesov so ilustrirani z električnimi shemami in skicami mehanskih konstrukcij
V prvem delu študijskega so zajeti osnovni načini povezovanja računalnika z okolico. Posamično so
obravnavane osnovne vhodno izhodne funkcije računalnika: digitalni izhod, digitalni vhod, analogni
izhod in analogni vhod. Razlaga vsake od navedenih funkcij je oprta na nekatere značilne primere
uporabe.
Drugi del je namenjen osnovam robotike in se v precejšni meri opira na prvi del. Usmerjen je na
razlago delovanja in krmiljenja robotske roke s tremi prostostnimi stopnjami. Pojasnjene so osnove
mehanskih konstrukcij in geometrije robotske roke. Nekoliko izčrpneje je obravnavana kinematika
robotske roke, ki je oprta na osnovno znanje algebre. Obravnavane so posamezne možnosti
preverjanja dejanskega stanja robotske roke. Razloženi so osnovni načini krmiljenja, ki sežejo do PID
krmiljenja položaja robotskih segmentov. Na kratko so predstavljeni kinematični problemi krmiljenja
robota. Praktični del robotike se opira na proporcionalno krmilje robotske roke s tremi prostostnimi
stopnjami, ki jo je najlaže sestaviti iz elementov sestavljanke FISCHER TECHNIK. Razlaga delovanja
robotske roke je podkrepljena z enostavnim demonstracijskim programom.
Robotika Stran 4
__________________________________________________________________________________
Robotika Stran 5
1 Povezava računalnika z zunanjim svetom
Da bi računalnik povezali z merilnimi sistemi in z njim krmilili procese, ga moramo opremiti z
ustreznimi merilno krmilnimi pretvorniki, ki so nekakšen vezni člen med vodenim in/ali opazovanim
sistemom in računalnikom. Pri tem ne smemo pozabiti, da je računalnik digitalna električna naprava,
ki ima opraviti z analognimi količinami v okolici. Povezava med računalnikom in okolico ima več
nivojev, ki so različni od primera do primera. Kljub raznolikosti pa so osnovni načini povezave
računalnika z okolico podobni.
1.1 Računalnik kot digitalna naprava
Računalnik je digitalna električna naprava. To pomeni, da podatek predstavlja električni potencial, ki
je glede na potencial ozemljitve lahko visok (običajno med 2.6 V in 5.25 V) ali nizek (0 V do 0.4 V).
Namesto o električnem potencialu bomo v nadaljevanju govorili o električni napetosti in pri tem
privzeli, da je to razlika opazovanega potenciala glede na potencial ozemljitve (GND, oznaka je
izpeljana iz angleško besede ground - tla, zemlja). Za digitalno obliko podatkov je najustreznejši
dvojiški številski sistem, ker ima posamezno mesto v dvojiškem zapisu števila prav tako le dve
vrednosti, 0 in 1. Kadar je napetost v visokem stanju ji pripišemo vrednost 1, kadar pa je napetost
nizka, ji pripišemo vrednost 0. Taka oblika signala je primerna za operiranje s števili, ki jih v
dvojiškem sistemu zapišemo kot kombinacijo teh dveh vrednosti.
Ker nimamo vedno opraviti le s števili, jih pogosto pretvorimo po vnaprej določenem postopku
(kodiranje) tako, da predstavljajo povsem drugo vrsto informacije. Najpogostejša je pretvorba števil v
znake. Uveljavil se je ASCII zapis oz. kodiranje, ki na primer znaku 'a' priredi število 97, znaku 'b' 98
itd. S števili lahko sestavimo tudi zapis slike ali zvoka, vendar za to ni splošno uveljavljenih
standardov kot je to v primeru znakov.
1.2 Dvojiški zapis in vzporeden prenos podatkov
Eno mesto dvojiškega zapisa števila imenujemo bit, zapis z največ n mesti pa n biten. Osem bitno
število imenujemo tudi zlog (byte). Trenutno najbolj razširjeni so 16 in 32 bitni računalniki, kar
pomeni, da lahko naenkrat obdelujejo le oz. 32 bitna števila.
Ponovimo na kratko, kako pretvorimo n biten dvojiški zapis števila v desetiško obliko (Ades). Najnižji
bit označimo z D0 in višje bite z D1, D2, D3 ... Dn-1. Splošno formulo za pretvorbo zapišemo:
ADES
Dn
n Dn
n D D
1
2 12
2 21
210
20...
Največje število, ki ga lahko zapišemo z n biti (vsi so 1) je 2n-1.
Uporabimo formulo na zgledu pretvorbe osembitnega števila iz dvojiške v desetiško obliko:
1 1 1 0 1 0 1 0
127 + 126 + 125 + 024 + 123 + 022 +
121 + 020
1128 + 164 + 132 + 016 + 18 + 04 +
12 + 01 = 234
Drugačen je postopek za pretvorbo desetiško zapisanega števila v dvojiško obliko. Pokažimo to z
zgledom pretvarjanja števila 123:
123 : 2 = 61, ostane 1 (bit D0)
61 : 2 = 30, ostane 1 (bit D1)
Robotika Stran 6
__________________________________________________________________________________
30 : 2 = 15, ostane 0 (bit D2)
15 : 2 = 7, ostane 1 (bit D3)
7 : 2 = 3, ostane 1 (bit D4)
3 : 2 = 1, ostane 1 (bit D5)
1 : 2 = 0, ostane 1 (bit D6)
0 : 2 = 0, ostane 0 (bit D7)
V osembitni obliki je to 0 1 1 1 1 0 1 1.
D
D
D5
6
4
D3
D2
D1
D0
D7
D5
6
D4
D3
D2
D1
D0
D
D7
GND GND
0
1
1
1
1
0
1
1
Sl. 1.1, vzporeden prenos podatka med računalnikom in zunanjo enoto
Za povezavo računalnikom z okolico je običajno potrebnih več stopenj. Komunikacija računalnika z
njemu najbližjo enoto je digitalna (slika 1.1). Pri vzporednem prenosu podatka to pomeni, da je za
vsak bit ena vez. n-bitno število se torej prenaša po n vezeh, ki skupaj predstavljajo podatkovno vodilo
(data bus). Ker je napetost razlika električnih potencialov med dvema točkama, je za prenos podatkov
potrebna tudi povezava ozemljitev posameznih členov v sistemu. Izjema so komunikacije, pri katerih
so posamezne enote med seboj ohmsko (galvansko) ločene in se informacija na določenem delu
prenaša optično ali magnetno.
1.3 Izmenjava podatkov med računalnikom in okolico
Že v uvodu smo omenili, da glede na smer informacije med računalnikom in okolico lahko delimo
podatke na vhodne in izhodne.
Kadar se informacija prenaša iz računalnika v okolico, govorimo o izhodnem podatku. Računalnik ima
vlogo izvora električne napetosti, ki preko vmesnih elektronskih sklopov krmili naprave ali potek
procesa v okolici. Primer tega je računalniško vodenje gibanja robota, delovanja stružnice, tekstilnega
stroja, vklop ali izklop motorja, alarma, električnega grelnika, luči, delovanja tiskalnika, pisanje na
disketo itd. Računalnik torej preko svojih izhodnih funkcij vpliva na stanje v okolici.
Pri prenosu informacije iz okolice v računalnik rabimo pretvornike, tipala in električna vezja, ki
oblikujejo električno napetost, ki se najkasneje v členu najbliže računalniku pretvori v digitalno
obliko. Primeri vhodnih podatkov so neposredno računalniško merjenje temperature, osvetljenosti,
hrupa, kislosti raztopine, ..., preverjanje ali so vrata zaprta ali ne, štetje izdelkov, ki gredo preko
proizvodnega traku, merjenje koncentracije plina CO2 v zraku, spremljanje meteoroloških podatkov,
sprejemanje informacije s tipkovnice, ugotavljanje položaja miške, branje podatkov z diskete itd.
V večini računalniško vodenih procesih računalnik komunicira z okolico tako preko vhodov kot preko
izhodov (slika 1.2).
Robotika Stran 7
Sl. 1.2, vhodi in izhodi pri povezovanju računalnika s procesom
Računalnik ima pogosto opraviti z analognimi, zvezno spremenljivimi količinami. v okolici.
Temperatura, vlažnost, razdalja ali položaj robotske roke so količine, ki lahko zavzamejo poljubno
vrednost in ne le dve stanji, kot je to v digitalni elektroniki. Med računalnikom, ki je v osnovi digitalna
naprava in okolico, ki je v osnovi analogna, so potrebni pretvorniki, ki analogno količino spremenijo v
digitalno in obratno. Za kakšno obliko pretvorbe gre je odvisno od smeri prenosa informacije. V
primeru krmiljenja z računalnikom je to digitalno analogni pretvornik (DAC) in v primeru merjenja z
njim pa analogno digitalni pretvornik (ADC). Oblikovanje za računalnik primerne napetosti je lažje
takrat, kadar je narava procesa v okolici taka, da ga opisujeta le dve stanji. Luč običajno želimo
prižgati ali ugasniti, vrata le odkleniti ali zakleniti, nepovabljeni gost je ali ga ni v sobi itd. V teh
primerih električna napetost ostane v digitalni obliki in je možno neposredno branje podatka (digitalni
vhod) ali generiranje napetosti (digitalni izhod).
Delitev na vhodne in izhodne ter analogne in digitalne količine rezultira v štirih najpogostejših oblikah
povezovanja računalnika z okolico:
• digitalni izhod
• digitalni vhod
• analogni izhod
• analogni vhod
Računalnik je v splošnem povezan z več zunanjimi enotami, nekaj pa jih je takih, ki so pri sodobnih
računalnikih znotraj njegovega ohišja, a so funkcionalno zunanje enote (disketni pogon, serijski
vmesnik (RS 232), priključek za tiskalnik, zaslon ...). Ker ima za pošiljanje ali branje podatkov eno
vodilo, mora računalnik določiti, s katero zunanjo enoto komunicira. Temu je namenjeno naslovno
vodilo (address bus). n-bitno naslovno vodilo omogoča komunikacijo z 2n različnimi lokacijami.
Naslovnemu vodilu pomaga nadzorno vodilo (control bus), ki med drugim določa smer komunikacije
(vhodni-izhodni oz. read-write signal). Tako je na istem naslovu mogoče podatek tako prebrati kot ga
tja poslati. Podatek na naslovnem se skupaj s tistim na nadzornem vodilu preko dekodirnega vezja
spremeni v tako obliko (signal CS - chip select), da izbrani (naslovljeni) zunanji enoti omogoči
komunikacijo z računalnikom (slika 1.3). Računalniške komunikacije so raznolike in pogosto
zapletene, zato je na tem mestu obravnavana hudo poenostavljena, cilj razlage pa je osnovno
razumevanje programskih ukazov, preko katerih dosežemo izmenjavo podatkov med računalnikom in
okolico.
Robotika Stran 8
__________________________________________________________________________________
Sl. 1.3, izbira zunanje enote, s katero računalnik komunicira
1.4 Računalniški merilno krmilni vmesniki
Univerzalni vmesniki imajo na voljo vse štiri vhodno izhodne funkcije. Za praktično izvedbo nalog in
eksperimentov navedenih v priročniku potrebujemo najmanj:
• osembitni digitalni izhod, TTL karakteristike
• osembitni digitalni vhod, TTL karakteristike
• dvokanalni analogni izhod, 0 - 5 V
• štirikanalni analogni vhod, 0 - 5 V, čas pretvorbe 10 µs ali manj
Opisanim zahtevam ustrezata vmesnika CMC-S1 in CMC-S2, ki imata osemkanalni analogni vhod
namesto štirikanalnega in enosmerne vire napetosti +5V, +8V in -8V za napajanje zunanjih vezij.
V električnih shemah so priključki z vmesnikom označeni s simbolom , poleg oznake pa je simbol
za vhodno izhodno funkcijo in sicer:
• digitalni izhod DOut ali DO
• digitalni vhod DIn ali DI
• analogni izhod UOut ali UO
• analogni vhod UIn ali UI
Na shemah z oznakami (slika 1.4) je poleg na te povezave z vmesnikom treba paziti tudi na
povezavo s priključkom za ozemljitev (GND) vmesnika, ki ima oznako .
Robotika Stran 9
Sl. 1.4, povezovanje električnih vezij z vmesnikom
1.6 Naloge
1. Logična stanja na podatkovnem vodilu so:
D0 D1 D2 D3 D4 D5 D6 D7
0 1 1 0 0 1 1 0
Kolikšna je desetiška vrednost podatka ?
2. Računalnik iz okolice prebere število 154. Kateri biti podatkovnega vodila so bili v trenutku branja
v stanju 1 in kateri v stanju 0 ?
3. Za naštete vloge računalnika v povezavi z okolico določi, ali gre s stališča računalnika za vhodne,
izhodne ali kombinirane funkcije. Pri slednjih razčleni, katera aktivnost računalnika je vhodna in
katera izhodna.
• merjenje časa na smučarski tekmi
• zbiranje podatkov o dnevnem spreminjanju temperature na meteorološki postaji
• usmerjanje sončnih zbiralnikov proti Soncu preko dneva in celega leta
• spuščanje zapornic na hidroelektrarni ob telefonsko sporočeni informaciji, da je iz
elektroenergetskega sistema izpadla najmočnejša termoelektrarna
• vklop centralnega ogrevanja, če povprečna temperatura v prostorih pade pod 200C.
• tehtanje kilogramskih štruc kruha in izločanje tistih, katerih masa je manjša od 97 dag.
Robotika Stran 10
__________________________________________________________________________________
2 Digitalni izhod
Osnova digitalnega izhoda je digitalno digitalni pretvornik, do katerega vodijo podatkovno, naslovno
in kontrolno vodilo računalnika. Kadar računalnik pošlje podatek digitalnemu izhodu na izbranem
naslovu, le ta obdrži podatek tudi potem, ko računalnik komunicira s kako drugo zunanjo enoto ali je
kako drugače zaposlen.
2.1 Digitalni izhod kot vir napetosti
Na izbranih bitih digitalnega izhoda dobimo električno napetost, ki ustreza logični 0 ali 1. Če na
primer na osembitni digitalni izhod pošljemo število 210, je med priključki z oznakami DO(1), DO(4),
DO(6) in DO(7) napetost stanja 1 (okoli 5 V glede na GND), med priključki DO(0), DO(2), DO(3) in
DO(5) pa logična 0 (okoli 0 V). Najhitreje preverimo stanje digitalnega izhoda z voltmetrom, tako da
merimo napetost med priključkom posameznega bita in ozemljitvijo (GND). Preverjanje vseh osmih
bitov z voltmetrom je zamudno, zato v primeru, ko želimo hitro ugotoviti stanje izhoda uporabimo
svetlečo diodo, ki sveti takrat, ko skoznjo teče električni tok in ne sveti, če je napetost na diodi manjša
od njene kolenske napetosti in tok skoznjo ne teče. Kolikšna je kolenska napetost je odvisno od vrste
diode, za vse pa velja, da jo napetost, ki je le malo večja od kolenske napetosti, lahko uniči. Morebitno
uničenje svetleče diode preprečimo tako, da ji zaporedno vežemo še upor, ki omeji električni tok in
padec napetosti na diodi (slika 2.1). Tipična vrednost upora je od 100 do 330 , in kolenske
napetosti od 0.7 V do 3 V.
Sl. 2.1, prikaz stanja digitalnega izhoda s svetlečimi diodami
Robotika Stran 11
2.2 Primeri uporabe digitalnega izhoda
Najosnovnejša oblika uporabe digitalnega izhoda je vklop in izklop enosmernih električnih
porabnikov (žarnice, električnega grelnika) in sprememba smeri toka skoznje (enosmerni motor). V
posebnem primeru pa lahko služi tudi za analogno krmiljenje električne moči in za zvezno določitev
položaja telesa preko koračnih motorčkov.
2.2.1 Vklop porabnika s tranzistorjem
Osnovna funkcija tranzistorja v električnih vezjih je krmiljenje večjega električnega toka skozi
porabnik z majhnim električnim tokom digitalnega izhoda. Izvor večjega električnega toka in s tem
večje moči je zunanji enosmerni vir napetosti, saj digitalni izhodi ne morejo neposredno napajati
večjih porabnikov. Ker ima izhodna napetost enega bita digitalnega izhoda lahko le dve različni stanji,
je možen vklop ali izklop, ne pa tudi zvezno krmiljenje električne moči porabnika. Najprimernejše
vezje, v katerem tranzistor deluje kot stikalo, je vezje s skupnim emitorjem (slika 2.2), ki je na levi
narisano skupaj z viri napetosti, na desni pa tako, kot ga rišemo v elektronskih vezjih. V vezju je
napetost bita 0 digitalnega izhoda označena z D0(0) in napetost zunanjega vira z UCC, oboje
priključeno glede na ozemljitev (GND). Porabnik je označen z RP in je v konkretnem primeru lahko
žarnica, grelnik, enosmerni elektromotor itd. Upor RO med digitalnim izhodom in bazo tranzistorja
omeji bazni tok IB saj je napetost logične ena precej večja od kolenske napetosti med bazo in
emitorjem in bi zaradi velikega baznega toka lahko prišlo do uničenja tranzistorja.
Naredimo preprost izračun za tranzistor z nekoliko idealiziranimi karakteristikami (slika 2.3).
Ponovimo definicije nekaterih osnovnih količin, ki določajo obnašanje tranzistorja v vezjih.
Tokovno ojačenje je
I
I
C
B U constCE
En. 2.1
Sl. 2.2, vklop električnega porabnika s tranzistorjem, celotna shema in simbolična
elektrotehniška skica
Robotika Stran 12
__________________________________________________________________________________
Sl. 2.3, idealizirane karakteristike tranzistorja
diferencialni upor med bazo in emitorjem
rU
IBE
BE
B Ic const
En. 2.2
in diferencialni upor med kolektorjem in emitorjem
rU
ICE
CE
C Ib const
En. 2.3
Za idealiziran tranzistor velja, da je konstanten na vsem področju, rBE je nad kolensko napetostjo
UBE0 zanemarljivo majhen, prav tako je do napetosti UCE0 dinamični upor rCE zanemarljivo majhen in
zelo velik (neskončen) nad to napetostjo.
Naredimo še izračun napetosti UP na porabniku. Ker skozenj teče kolektorski tok velja
U R IP P C En. 2.4
Upoštevajoč idealizirano karakteristiko IC(IB) in enačbo 2.1 je to
U R IP P B En. 2.5
Izračunajmo še bazni tok
IU U
RB
D BE
0 0
0
En. 2.6
Združimo enačbi 2.5 in 2.6 in dobimo končno formulo
00
0
BED
P
P UUR
RU En. 2.7
Napetost med kolektorjem in emitorjem je razlika med napajalno napetostjo in napetostjo na
porabniku
U U UCE CC P En. 2.8
Na tranzistorju se torej troši moč
P U IT CE C En. 2.9
ki v nobenem primeru ne sme biti večja od tiste maksimalne vrednosti, ki jo za tranzistor z določeno
oznako najdemo v tabelah. V primeru, ko pa želimo, da bo tranzistor "preživel" tudi ko je kratkostično
obremenjen (RP = 0 ), mora biti maksimalna dovoljena moč na tranzistorju
P U IT CC Cmax En. 2.10
Izkoristek vezja je definiran z razmerjem trošene moči na porabniku in moči, ki jo troši vir napetosti
UCC in je
Robotika Stran 13
U
U
P
CC
En. 2.11
Enačbe veljajo seveda le v primeru, če je + UCC vsaj nekoliko večja od izračunane napetosti UP.
................................................................................................................................................
Zgled 1:
Z digitalnim izhodom želimo krmiliti vklop in izklop električnega porabnika z upornostjo 15 . Ko je
digitalni izhod v stanju 1, naj bo napetost na porabniku 4.5 V, pri stanju 0 pa 0 V. Določimo upor R0,
moč, ki se troši na tranzistorju in izkoristek.
Podatki: UCC = 8 V, = 100, DO(0) = 5 V, UBE0 = 0.7 V
Izračun: iz enačbe 2.7 izrazimo R0 in vstavimo zgornje podatke:
kUUU
RR BED
P
P 4.1 000 En. 2.12
Moč na porabniku izračunamo iz enačbe P U RP P P 2 in je 1.35 W, izkoristek po enačbi 2.11
pa 0.56 oziroma 56 %. Izgubna moč tranzistorja je 1.05 W, če je upornost porabnika RP in 2.5 W v
primeru kratkega stika na mestu porabnika. Pri napetosti logične 0 sta bazni in emitorski tok nič, torej
je tudi napetost na porabniku nič.
................................................................................................................................................
Karakteristike realnega tranzistorja odstopajo od privzete idealizacije, zato naš izračun daje le osnovne
napotke za konstruiranje vezja. Eksperimentalno določimo upor RO tako, da na njegovo mesto damo
nastavljiv upor ali uporovno dekado in hkrati merimo napetost na porabniku. Začnemo z nekajkrat
večjim uporom od izračunanega in ga postopoma zmanjšujemo, dokler napetost na porabniku ni
takšna, kot si jo želimo. Maksimalno moč tranzistorja določimo na enak način kot pri prejšnjem
zgledu, le da je pametno izbrati tranzistor z vsaj 50 % večjo vrednostjo zanjo.
Za vklop električne žarnice ali enosmernega elektromotorja potrebujemo tranzistorje, ki dovoljujejo
kolektorski tok od 0.5 A do 10 A (ICmax) in še prenesejo izgubno električno moč, ki se sprošča med
kolektorjem in emitorjem tranzistorja, nad 10 W (PCEmax). Pri izbiranju tipa tranzistorja je pomembna
tudi največja dovoljena napetost med kolektorjem in emitorjem (UCEmax) in ojačenje (), ki je podano
za določen kolektorski tok (IC) in določeno napetost med kolektorjem in emitorjem (UCE). Navedimo
podatke za nekaj tipičnih tranzistorjev:
Preglednica 2.1
oznaka pol
a-
ohišje Ojačenje pri: UCE
max
ICma
x
PCE
max
ritet
a
UCE(V
)
IC(mA) (V) (A) (W)
BC109B npn T37 240-500 5 2 20 0.1 0.3
BD434 pnp T74 > 50 2 1000 22 4 36
BD433 npn T74 > 50 2 1000 22 4 36
BD136 pnp T74 40-250 2 150 45 0.5 6.5
BD135 npn T74 40-250 2 150 45 0.5 6.5
BD650 pnp T0220 > 750 3 3000 100 8 62.5
BD649 npn T0220 > 750 3 3000 100 8 62.5
2N3055 npn T24 25-100 4 500 100 15 115
Robotika Stran 14
__________________________________________________________________________________
V tabeli so podatki tranzistorja za majhne moči (BC109b), trije komplementarni pari močnostnih
tranzistorjev in tranzistor za posebno velike moči. Komplementarna tranzistorja sta tista, ki imata
identične lastnosti le da je eden n-kanalni (npn) in drugi p-kanalni (pnp). Tranzistorja BD650 in
BD649 imata posebno veliko tokovno ojačenje ß, saj gre za Darlingtonovo vezje dveh tranzistorjev v
enem ohišju.
Pri pripravi električnih vezij z močnostnimi tranzistorji ne smemo pozabiti na hlajenje. V ta namen je
mogoče kupiti posebna hladilna telesa, ki so prilagojena posameznim ohišjem tranzistorjev in jih
pritrdimo na tranzistorje.
.........................................................................................................................................
Zgled 2:
Naloga: z digitalnim izhodom želimo krmiliti vklop in izklop električne žarnice, kakršna je v žepnih
svetilkah z baterijami za 4,5 V. Za te žarnice velja podatek, da pri napetosti UP = 4.3 V skoznje teče
tok 0.3 A. Napetost napajanja vezja je 8 V. Vezje naj dovoljuje tudi kratkostično obremenitev. Tok, ki
teče iz digitalnega izhoda naj ne bo večji od 10 mA. Izberite tip tranzistorja in eksperimentalno
določite RO.
Postopek: podatki so podobni kot pri prvem zgledu. Največja moč na tranzistorju naj bo večja od 5 W,
največji dovoljen kolektorski tok večji od 0.4 A. Da bo zadoščeno pogoju o obremenitvi digitalnega
izhoda, naj bo tokovno ojačenje večje od 50. Iz zgornje tabele tranzistorjev se zdi primeren npn
tranzistor z oznako BD135. Sestavimo vezje (slika 2.2) in poskrbimo, da je bit DO(0) v stanju logične
1. Vzporedno z žarnico (RP) vežemo voltmeter in na mesto upora RO uporovno dekado ali nastavljivi
upor. Začnemo z upornostjo RP je 10 k in jo postopoma zmanjšujemo. Napetost na žarnici je želenih
4.3 V pri RO je 2.8 k. Lahko se zgodi, da boste dobili drugačen rezultat, saj se v praksi tranzistorji z
enako oznako med seboj precej razlikujejo, še posebej, če so od različnih proizvajalcev.
................................................................................................................................................
Kadar je porabnik enosmerni električni motor, se zaradi indukcije med sponkama motorčka pojavijo
kratkotrajni napetostni impulzi, ki v najslabšem primeru lahko celo blokirajo delo računalnika (vendar
brez trajnih okvar). Vzporedno z motorjem zato vežemo keramični kondenzator (od 10 do 100 nF),
digitalni izhod pa dodatno zaščitimo z diodo in še enim kondenzatorjem (slika 2.4).
Sl. 2.4, vklop motorja s tranzistorskim vezjem
2.2.2 Pulzno krmiljenje električne moči
Osnovna vloga digitalnega izhoda je torej vklop in izklop naprave, zamenjava smeri vrtenja motorja
itd. Omenili smo, da s tranzistorskim vezjem žarnico ali grelnik lahko le vključimo in izključimo, ne
moremo pa doseči, da bi porabnik trošil večjo ali manjšo moč. To ne velja, če stanje vklopa in izklopa
Robotika Stran 15
tako hitro menjamo, da se menjavanje v okolici sploh ne čuti. Če je torej perioda vklopa in izklopa
konstantna (t0), čas ko je grelnik znotraj te periode vklopljen pa različen, bo tudi povprečna trošena
moč različna. Daljši ko je čas vklopa glede na čas izklopa, večja je povprečna sproščena moč (slika
2.5).
Sl. 2.5, časovni potek vklopa in izklopa pri pulznem krmiljenju moči
................................................................................................................................................
Zgled 3:
Naloga: vzemimo da porabnik troši električno moč 60 W, če je stalno vključen, želimo pa, da bi bila
povprečna trošena moč na grelniku le 45 W. Kolikšno naj bo trajanje vklopa in kolikšno izklopa, če je
perioda vklapljanja 200 ms ?
Rešitev: želena povprečna moč je 75 % celotne moči, torej mora biti grelnik 75 % časa vklopljen in
25 % časa izklopljen. 75 % od 200 ms je 150 ms, in 25 % od 200 ms 50 ms. Grelnik mora biti torej
vklopljen 150 ms, izklopljen 50 ms, spet vklopljen 150 ms ...
................................................................................................................................................
2.2.3 Vklop porabnika z relejem
Sl. 2.6, priključki enojnega releja
Rele je element, ki ima v osnovni izvedbi pet priključkov (slika 2.6). Trije priključki (a,b,c, )
predstavljajo stikalo, ki je v položaju (1) ali (2), odvisno od tega ali skozi preostala dva priključka
(d,e) teče dovolj velik električni tok. Za razliko od tranzistorja gre v primeru releja za dejansko
prekinitev ali sklenitev električnega kroga, zato je upor sklenjenega stikala (RON) zelo majhen in
razklenjenega zelo velik (ROFF). Najpreprostejši primer uporabe je prekinitev ali sklenitev električnega
tokokroga z virom napetosti in porabnikom (slika 2.7).
V releju je med dvema priključkoma (d,e) tuljava, ki v primeru električnega toka ustvarja magnetno
polje, sila magnetnega polja pa deluje na položaj stikala.
Podatki, ki so najpomembnejši pri izbiri tipa releja so:
• napetost med d in e, ki je potrebna za krmiljenje releja (UR)
• maksimalen tok preko stikal releja (Imax)
• upornosti RON in ROFF
Robotika Stran 16
__________________________________________________________________________________
Sl. 2.7, vklop žarnice z relejem
Z digitalnim izhodom lahko neposredno krmilimo le t.i. mikroreleje za napetost UR = 5 V ali 6 V.
Kadar potrebujemo večjo napetost, moramo kombinirati tranzistor in rele (slika 2.7). Za krmiljenje
releja ne potrebujemo močnostnega tranzistorja, saj je upornost releja med sponkama precej velika
(nad 100 ). Zadoščal bi torej že tranzistor z oznako BC109. Tudi vklop in izklop releja generira
inducirane sunke napetosti, zaradi česar je potrebna podobna zaščita kot v primeru vklopa
enosmernega elektromotorja.
2.2.4 Integrirana vezja za vklop porabnika
Kadar je potrebno digitalno krmiliti vklop in izklop več porabnikov ali krmiliti več koračnih
motorčkov, namesto posameznih tranzistorjev uporabimo nize tranzistorjev, ki so v obliki
integriranih vezij vezani v Darlingtonov spoj. Vhodi so baze, izhodi pa kolektorji
Darlingtonovih spojev. Elektronskim sklopom, katerih izhod je kolektor, pravimo izhod z
odprtim kolektorjem. Porabnik ne vežemo med izhod in ozemljitev, kot smo sicer vajeni,
ampak med izhod in napajanje. Zgled Darlingtonovega spoja z odprtim kolektorjem, kakršen
je v integriranem vezju ULN2803, je prikazan na sliki 2.8 levo. To integrirano vezje je
prirejeno za TTL digitalno logiko. Pri vhodni napetosti logične 0 (U1 = 0V) je Darlingtonov
par zaprt, tok skozi porabnik RP je nič, torej je izhodna napetost U2 visoka (enaka napajanju
UC). Pri stanju logične 1 na vhodu (U1 5V) je tranzistorski par odprt, skozi porabnik teče tok
in napetost med kolektorjem in emitorjem (=U2) je minimalna. Ker je izhodna napetost U2
visoka pri logični 0 in nizka pri logični 1, v shemah pogosto rišemo Darlingtonov spoj z
odprtim kolektorjem s simbolom za vrata NE (2.8 desno).
Sl. 2.8, vklop porabnika z Darlingtonovim spojem z odprtim kolektorjem (integrirano vezje ULN2903)
Robotika Stran 17
V integriranem vezju ULN2803 je osem Darlingtonovih parov, vgrajene pa so tudi zaščitne
diode, ki so vežemo tako, da so priključene vzporedno s porabniki v zaporni smeri (slika 2.9).
Maksimalni tok, ki lahko teče skozi posamezni porabnik, je 0.5 A. Točnejše podatke o tem in
podobnih integriranih vezjih dobite na spletni strani firme Allegro Microsystems na
http://www.allegromicro.com, dokumentacijo o ULN2903 v pdf formatu dobite na
http://www.allegromicro.com/datafile/2801.pdf. Podobno integrirano vezje s štirimi
Darlingtonovimi pari in tokove do 4A je UDN2878, preberite
http://www.allegromicro.com/datafile/2878.pdf.
Sl. 2.9, vklop več porabnikov z Darlingtonovim nizom z odprtim kolektorjem (integrirano vezje ULN2903)
2.2.5 Zamenjava smeri toka z relejem
V nekaterih primerih ne želimo porabnika le vključiti ali izključiti iz tokokroga, ampak spremeniti
smer električnemu toku. Pri žarnici ali električnemu grelniku to nima nobenega pomena, drugače pa je
pri enosmernem elektromotorju, kjer sprememba smeri toka pomeni tudi spremembo smeri vrtenja. Za
izvedbo te naloge navadno uporabimo rele posebne izvedbe, pri katerem hkrati krmilimo dve stikali
(takšen je rele z oznako TRK 2221 naveden v tabeli). Tokokrog z virom napetosti in porabnikom
(recimo motorčkom) ni v nobenem primeru prekinjen, pač pa je od stanja releja odvisna smer toka
skozi porabnik.
Najpogosteje ne želimo le menjavati smer vrtenja elektromotorja, ampak ga tudi ustaviti. Ena možnost
je, da tokokrog z virom napetosti UM in motorjem speljemo preko še enega releja, ki ga seveda ne
moremo krmiliti z istim bitom digitalnega izhoda ampak z drugim. Boljša rešitev je izklop ali vklop
motorja preko tranzistorja (slika 2.10). Tako bit DO(0) odloča o smeri vrtenja motorja (recimo stanje 0
v smeri urnega kazalca , stanje 1 v nasprotni smeri ), bit DO(1) pa o tem ali naj se motor sploh vrti
(stanje 1) ali ne (stanje 0). Imamo torej štiri različna stanja dveh bitov digitalnega izhoda za tri stanja
motorja:
Robotika Stran 18
__________________________________________________________________________________
DO
(desetiško)
DO
(dvojiško)
stanje
motorja
0 0 0 miruje
1 0 1 miruje
2 1 0 se vrti
3 1 1 se vrti
Preglednica 2.2
Sl. 2.10, zamenjava smeri vrtenja motorja in njegov vklop ter izklop
Oglejmo si še enostavnejši način zamenjave smeri toka z releji. Namesto releja z dvojnima stikaloma
uporabimo dva enojna releja (slika 2.11). Kadar sta oba releja v enakem stanju, je na obeh priključkih
motorja isti pol napetosti napajanja motorja (UM) in motor se ne vrti. Da torej motor miruje, mora biti
na digitalnem izhodu stanje 0 0 ali 1 1. Motor se vrti, kadar sta releja v različnih stanjih in sicer v eno
smer pri stanju 1 0 in v drugo pri stanju 0 1.
Stanje relejev na sliki 2.11 krmilimo neposredno z digitalnim izhodom, kar pomeni, da je preklopna
napetost UR zanju 5 V ali 6 V.
Robotika Stran 19
Sl. 2.11 Zamenjava smeri toka z dvema enojnima relejema
2.2.6 Zamenjava smeri toka s tranzistorji
Zamenjavo smeri toka skozi porabnik (v našem primeru enosmerni elektromotor) dosežemo s tako
imenovanim H mostičem. Poznamo različne izvedbe H mostičev, skupno vsem pa je, da so njihova
osnova štirje diskretni elementi, katerih vloga je podobna relejem oz. mehanskim stikalom – vsak ima
dve stanji: stanje prevajanja in stanje zapiranja (slika 2.12a). Smiselno je, da hkrati prevajata le
elementa po diagonali: a in d za eno smer vrtenja ter c in b za drugo smer vrtenja. Motor miruje, kadar
noben diskretni element ne prevaja. Praktična izvedba H mostiča s štirimi tranzistorji je narisana na
sliki 2.12b. Ko je napetost na vhodu enaka napajalni napetosti Uc prevaja npn tranzistor (Tb, Td), ko pa
je napetost 0 V pa pnp tranzistor (Ta, Tc). Motor se vrti, ko sta na obeh vhodih različni stanji in miruje,
ko sta enaki. Smer vrtenja torej določata kombinaciji: Uc, 0V ter 0V, Uc.
Sl. 2.12, H mostič: princip (zgoraj) in praktična izvedba s tranzistorji (spodaj)
Robotika Stran 20
__________________________________________________________________________________
2.2.7 Integrirana vezja za zamenjavo smeri toka
V integriranih vezjih so tudi elektronski sklopi, pri katerih lahko porabnik priključimo med izhod in
ozemljitev, med izhod in napajanje ter med dva izhoda. Pri slednjem primeru gre za H mostič, s
katerim digitalno krmilimo smer toka skozi porabnik (smer vrtenja enosmernega motorja). Integrirano
vezje z oznako L293B (slika 2.13) ima štiri take sklope, vsak od njih zmore tok do 1 A. Napajanje za
krmiljenje porabnika je US (do 36 V), na USS je napajanje digitalne logike (do 36 V, pri TTL logiki
+5V). Na vhodih VH1 do VH4 so stanja logične 0 in 1 (logična 1 je od 3V do 7V, običajno okoli 5V).
EN1 in EN 2 sta vhoda, ki sta normalno v stanju logične 1, če pa je katero od stanj 0, je tisti par
elektronskih sklopov zaprt ne glede na stanja na vhodih. Na sliki 2.13 je porabnik na sklopu 1 vezan
proti ozemljitvi in skozenj teče tok, če je VH1 v stanju 1, porabnik na sklopu 2 pa je vezan proti
napajanju – skozenj teče tok, če je na VH2 stanje 0. H mostič sestavljata sklopa 3 in 4. Če sta vhoda
VH3 in VH4 v enakih logičnih stanjih (00 ali 11), se motor ne vrti, če pa v različnih, se vrti v eno
(stanji vhodov 01) ali drugo (stanji 10) smer.
Integrirano vezje proizvaja firma SGS-Thompson, http://www.st.com, podrobnejši opis v pdf formatu
si presnamete iz http://www.st.com/stonline/books/pdf/docs/1328.pdf ). Podobna izvedba s tokovi do 4
A je L298 (opis je na http://www.st.com/stonline/books/pdf/docs/1773.pdf).
Sl. 2.13, Krmiljenje smeri toka skozi porabnik
2.3.8 Princip delovanja in modeli koračnih motorčkov
Koračni motorček je digitalno krmiljen, zato njegov zasuk ni zvezen, ampak je možen le zasuk v
določenih korakih (recimo za 1.8°). Ta lastnost je posebno primerna za računalniško krmiljenje, zato
koračni motorčki poganjajo matrične tiskalnike, disketne pogone, nekatere risalnike itd.
Prevladujeta dve zvrsti koračnih motorčkov – unipolarni in bipolarni. Oba modela koračnih
motorčkov, ki ju bomo obravnavali, imata vse osnovne značilnosti pravega koračnega motorčka, le v
tehničnem smislu sta močno poenostavljena.
Bipolarni koračni motorčki
Na vodoravno podlago postavimo dve tuljavi tako, da sta njuni osi vodoravno, pod pravim kotom in na
enem koncu dovolj blizu. Tuljavi predstavljata stator koračnega motorčka. V našem modelu namesto
rotorja (vrtečega dela motorja) uporabimo magnetnico (kompasna igla). Njeno os postavimo v
presečišče osi tuljav, da nam bo kazala smer magnetnega polja (slika 2.14). Če skozi tuljavo teče
električni tok, ustvari magnetno polje v smeri njene geometrijske osi, od smeri toka pa je odvisno, ali
je magnetno polje usmerjeno v eno ali drugo smer. Vzemimo, da ima os prve tuljave smer S-J, druge
pa V-Z. Možne so štiri različne kombinacije smeri magnetnega polja in ker se magnetni polji seštevata
vektorsko, so z obračanjem smeri toka skozi tuljavi možne štiri različne smeri vsote obeh magnetnih
polj. Če naenkrat zamenjamo smer električnega toka le v eni tuljavi, se smer magnetnega polja
Robotika Stran 21
spremeni za 90°. Izberemo tako zaporedje štirih korakov, da se smer magnetnega polja, in s tem tudi
magnetnice, spreminja v po 90°:
1k 2k 3k 4k 5k=1k
1a + + - - +
1b - - + + -
2a + - - + +
2b - + + - -
Preglednica 2.3
Peti korak je pri isti smeri vrtenja enak prvemu. Smer vrtenja spremenimo tako, da spremenimo vrstni
red korakov. Če naj se recimo smer vrtenja spremni v stanju 3k v zgornji tabeli, potem namesto stanj
4k, 1k, 2k,… sledijo 2k, 1k, 4k
Sl. 2.14, postavitev tuljav in seštevanje magnetnega polja pri različnih smereh toka skozi tuljavi
Ker znamo z uporabo releja in digitalnega izhoda obrniti smer električnega toka, lahko sestavimo
vezje, s katerim krmilimo model koračnega motorčka z računalnikom (slika 2.15). Releje z 12 voltnim
vklopom moramo vezati preko tranzistorja. Diode imajo v vezju vlogo zaščite pred induciranimi
impulzi napetosti na tuljavah in v releju.
Krmiljenje koračnega motorčka z dvema enojnima relejema je prikazano na sliki 2.15. Vezje smo
priredili tako, da potrebujemo le dva bita digitalnega izhoda, kar je dovolj glede na število stanj
koračnega motorčka (4). Pri stanju 0 na bitu D0 je polariteta priključkov 1a +, 1b -, tako pri stanju
1 na D0 velja 1a -, 1b +. Podobno določa polariteto priključkov 2a, 2b stanje bita D1. Na
digitalnem izhodu je za vrtenje magnetnice v smeri urinega kazalca potrebno sledeče zaporedje:
koraki D1 (1a,1b) D
0 (2a,2b) des (O)
1k 0 (+,-) 0 (+,-) 0
2k 1 (-,+) 0 (+,-) 2 135
3k 1 (-,+) 1 (-,+) 3 225
4k 0 (+,-) 1 (-,+) 1 315
5k=1k 0 (+,-) 0 (+,-) 0 45
… ... ... ... ...
Preglednica 2.4
Robotika Stran 22
__________________________________________________________________________________
Sl. 2.15, model koračnega motorčka krmiljen z dvema bitoma digitalnega izhoda
Pri opisanem vezju za krmiljenje koračnega motorčka spreminjamo samo smer toka skozi obe tuljavi,
ne moremo pa doseči, da bi bil tok skozi tuljavi nič. V nekaterih primerih je to slabost, saj bi si včasih
želeli prosto (ročno) vrtenje rotorja ('prosti tek'). Da to dosežemo, moramo uporabiti eno od vezij, ki
omogoča tudi izklop porabnika. Za vsako tuljavo koračnega motorčka torej potrebujemo dva bita
digitalnega izhoda.
Vzemimo, da krmilje zgradimo z integriranim vezjem L293 (slika 2.13). Obe tuljavi vežemo tako, da
je mogoče spreminjati polariteto priključkov (slika 2.16). Logična stanja, ki si sledijo na štirih bitih
digitalnega izhoda so:
Preglednica 2.5
koraki D0 D
1 D
2 D
3 des (O)
1k 1 0 1 0 5 45
2k 1 0 0 1 9 135
3k 0 1 0 1 10 225
4k 0 1 1 0 6 315
5k=1k 1 0 1 0 5 45
… ... ... ... ...
'prosti tek' 0 0 0 0 0 /
Robotika Stran 23
V zadnji vrstici toka skozi tuljavi ni, stator ne ustvari magnetnega polja in rotor je prosto vrtljiv.
Enako stanje rotorja bi dosegli, če bi bili vsi biti digitalnega izhoda v stanju 0.
Sl. 2.16, krmilje bipolarnega koračnega motorčka z integriranim vezjem L293
Kadar ne potrebujemo prostega vrtenja rotorja in želimo krmiliti koračni motorček le z dvema bitoma,
k vezju na sliki 2.16 dodamo dvojico logičnih vrat NE (slika 2.17). Logična stanja na digitalnem
izhodu si sledijo enako kot je zapisano v preglednici 2.4.
Sl. 2.17, krmilje bipolarnega koračnega motorčka z integriranim vezjem L293
Unipolarni koračni motorčki
Navitje na statorju sestavljata dve tuljavi s srednjim izvodom. Posamezna tuljava je videti, kot bi bila
sestavljena iz dveh zaporedno vezanih tuljav. Za gradnjo modela unipolarnega koračnega motorčka
postavimo osi obeh tuljav med seboj pravokotno (slika 2.18). Motorček običajno krmilimo z
Darlingtonovimi pari z odprtim kolektorjem, kjer vežemo porabnik med izhod in napajanje. Srednja
izvoda zato med seboj povežemo in priključimo na napajanje, preostale štiri priključke tuljav pa
vežemo na kolektorje štirih Darlingtonovih parov. Za krmiljenje s štirimi koraki teče tok hkrati le
skozi polovico tuljave.
Robotika Stran 24
__________________________________________________________________________________
Sl. 2.18, model unipolarnega koračnega motorčka
Integrirano vezje ULN2803 (slika 2.9) omogoča krmiljenje dveh koračnih motorčkov. Priključitev
tuljav enega motorčka prikazuje slika 2.19. Zaporedje logičnih stanj na štirih bitih digitalnega izhoda
je enaka kot v preglednici 2.5. Če ne potrebujemo prostega vrtenja rotorja je prav tako mogoče krmiliti
le z dvema bitoma. En bit vodimo neposredno na vhod in preko logičnih vrat NE drugi vhod, podobno
velja za drugi bit.
Sl. 2.19, krmilje unipolarnega koračnega motorčka z integriranim vezjem ULN2803
Dodatne informacije o koračnih motorčkih si poglejte na http://www.cs.uiowa.edu/~jones/step/.
.........................................................................................................................................
Robotika Stran 25
3 Digitalni vhod
Pretvornik za digitalni vhod ima obratno funkcijo kot digitalno digitalni izhod. Računalnik sprejme
(prebere) logična stanja bitov digitalnega vhoda. Pri najbolj razširjenem "TTL" standardu za napetost
med 0 V in 0.4 V velja stanje logične 0, za napetost med 2.6 V in 5.3 V pa stanje logične 1.
Ugotavljanje stanja digitalnega vhoda za napetost v vmesnem intervalu je nezanesljivo.
3.1 Preverjanje logičnih stanj z digitalnim vhodom
Osem-bitni digitalni vhod posreduje računalniku osem-bitno število (od 0 do 255). Vrednost števila je
odvisna od logičnih stanj posameznih bitov. Da bi ugotovili logična stanja posameznih bitov moramo
zato število prebrano z digitalnega vhoda pretvoriti v dvojiško obliko.
Zgled:
Če smo z digitalnega vhoda prebrali vrednost 132 (dvojiško 10000100) pomeni, da so bila logična
stanja posameznih bitov v trenutku branja števil sledeča:
DI(0) DI(1) DI(2) DI(3) DI(4) DI(5) DI(6) DI(7)
0 0 1 0 0 0 0 1
Drugače povedano - električni potencial bitov DI(2) in DI(7) je bil glede na ozemljitev (GND) v stanju
logične 1, drugje pa logične 0. Tisti biti digitalnega vhoda, ki niso priključeni nikamor, ne zavzamejo
nujno stanja logične 0. Tako so nevezani vhodi digitalnih integriranih vezij iz serije 74LS... običajno v
stanju logične 1, vezja iz serije 74HC... pa so v stanju logične 0. Nevezani digitalni vhodi vmesnikov
CMC-S1 in CMC-S2 so normalno v stanju 0, vendar se na to v vseh okoliščinah ne moremo
popolnoma zanesti.
Najlaže je testirati digitalni vhod tako, da preko dvo-položajnega stikala na posamezne bite vodimo ali
napetost logične 1 (5 V) ali logične 0 (0 V). Z digitalnim vhodom v tem primeru preverjamo položaj
stikal (slika 3.1). Stikala bi lahko nadomestili s tipkami, pri čemer bi preko tipke vodili le napetost
+5V in se zanesli na to, da bi pri razklenjeni tipki (vhod ni vezan) digitalni vhod imel stanje logične 0.
V testnem programu za vmesnika CMC-S1 in CMC-S2 je stanje 1 digitalnega vhoda prikazano z
modro pobarvanim krogom in 0 s praznim krogom. Kadar je posamezen bit prost, je njegovo stanje
najverjetneje 0. V našem primeru (slika 3.Napaka! Zaznamek ni definiran.) sta v stanju 1 bita D2 in
D7, podatek na digitalnem vhodu je zato 132 (4+128). Kadar nas posamezni biti ne zanimajo, prikaz
njihovih stanj izbrišemo z udarcem na tipke '0' do '7'. Izbrisan prikaz vrnemo na zaslon s ponovnim
udarcem na ustrezno tipko.
Robotika Stran 26
__________________________________________________________________________________
Sl. 3.1, ugotavljanje položaja stikal z digitalnim vhodom
3.2 Primeri uporabe digitalnega vhoda
Omenili smo že, da preko digitalnega vhoda lahko z računalnikom ugotovimo položaj stikal. Uporaba
digitalnega vhoda pa je precej splošnejša, če uporabimo različna tipala (senzorje). Vežemo jih v taka
električna vezja, ki pretvorijo neelektrično količino v električno napetost digitalne oblike. Tako z
računalnikom lahko ugotovimo, ali je svetlobni snop prekinjen ali ne, ali je telo na določenem mestu v
prostoru ali ga tam ni, ali je temperatura nad ali pod kritično vrednostjo itd.
3.2.1 Svetlobno občutljiva tipala
Najpogosteje uporabljamo svetlobno občutljiva tipala, ki se jim z osvetljenostjo spreminja njihova
upornost. Najpreprostejši (in najcenejši) od teh je fotoupor (pogosta oznaka zanj je LDR - light
dependent resistor). Njegova upornost je močno odvisna od osvetljenosti in sicer večja ko je
osvetljenost, manjša je njegova uporost. Nizkoohmski fotoupori imajo v temi upornost nekaj M, pri
osvetljenosti 1000 lx pa okoli 1 k.
Slaba stran fotouporov je, da imajo sorazmerno počasen odziv. Pri hitrem povečanju osvetljenosti iz
teme na 1000 lx je za 1/2 vrednosti končne upornosti potrebno od 1 ms do 50 ms, odvisno od tipa
fotoupora. Pri zmanjšanju osvetljenosti nazaj na temo je odziv še počasnejši. Proizvajalci podajajo
naslednje podatke:
• graf odvisnosti upornosti () od osvetljenosti (lx)
• največja dopustna moč (W)
• največja dopustna napetost med sponkama fotoupora (V)
• čas naraščanja in čas padanja za dano trenutno osvetlitev
Robotika Stran 27
Sl. 3.2, svetlobna zapora s fotouporom
Tipičen način uporabe fotoupora je svetlobna zapora (slika 3.2). Pred izvor svetlobe postavimo
kondenzatorsko lečo tako da ustvarimo približno vzporeden snop svetlobe, ki ga z zaslonko tudi
zožimo, če je to potrebno. Svetlobni snop usmerimo na fotoupor, pred katerega lahko postavimo
zbiralno lečo. Fotoupor vežemo v delilnik napetosti. Če neko telo preseka svetlobni snop, se
osvetljenost fotoupora močno zmanjša, upornost se poveča in napetost na referenčnem uporu Rref
delilnika napetosti se zmanjša. Vrednost Rref je odvisna od tipa fotoupora in od spremembe
osvetljenosti zaradi prekinitve svetlobnega snopa. Najlaže ga določimo eksperimentalno, kar pomeni
da je na mestu Rref uporovna dekada ali v vezje dajemo različne upore in merimo napetost (DI(0)) ko je
fotoupor osvetljen in ko je svetlobni snop prekinjen. Napetost pri osvetljenem fotouporu mora biti tako
velika, da pomeni za digitalni vhod logično 1 in zatemnjenega fotoupora dovolj majhna, da predstavlja
napetost logične 0. To je pri dovolj močnem svetlobnem snopu vedno mogoče doseči.
Mesti fotoupora in referenčnega upora v delilniku lahko tudi zamenjamo. V tem primeru je napetost na
DI v stanju logične 1 takrat, ko je svetlobni snop prekinjen in v stanju logične 0 takrat, ko ni.
Na ta način je mogoče z računalnikom šteti predmete, ki so na tekočem traku ali krmiliti motor tako,
da je gibanje izbranega dela stroja (robota) omejeno na določen prostor. Temu principu rečemo
svetlobna zapora, saj s prekinitvijo svetlobnega snopa dobimo informacijo, da se je neko telo znašlo na
določenem mestu. Tako kot v primeru stikal lahko z enim osembitnim digitalnim vhodom hkrati
ugotavljamo stanja na osmih mestih.
Pri uporabi fotoupora na način, ki smo ga opisali, se moramo zavedati dveh omejitev. Prva je
posledica časovnega zaostajanja odziva senzorja, zato na ta način hitro štetje ni mogoče. Precej krajši
odzivni čas imajo fototrazistorji, še krajšega pa fotodiode.
Fototranzistorji delujejo podobno kot običajni bipolarni tranzistorji, le da bazni tok zamenja svetlobni
tok – večina fototranzistorjev nima priključka za bazo. Večja kot je torej osvetljenost fototranzistorja,
boljša je prevodnost med kolektorjem in emitorjem. Osnovna vezava je zato podobna vezavi fotoupora
– vežemo ga v delilnik, paziti pa moramo na priključka, saj prevaja samo, če je na kolektorju pozitiven
potencial glede na emitor (slika 3.3 a).
Sl. 3.3, osnovna vezava fototranzistrorja (a) in fotodiode (b)
Robotika Stran 28
__________________________________________________________________________________
Fotodioda ima v prevodni smeri podobne lastnosti kot običajne diode – le kolenska napetost je
običajno večja. Od njih pa se razlikuje v tem, da je njena prevodnost v zaporni smeri močno odvisna
od osvetljenosti. Pri detekciji svetlobnega toka jo torej vežemo v zaporni smeri (slika 3.3 b).
Občutljivost fotranzistja na spremembe svetlobnega toka je precej manjša od fotoupora, svetleče diode
pa so še manj občutljive. Majhna občutljivost terja veliko vrednost referenčnega upora, česar pa ne
pogosto ne moremo doseči, kadar vhodna notranja upornost digitalnega vhoda ni dovolj velika.
Namesto preproste vezave v delilnik napetosti, vežemo senzorja v vezje z operacijskim
ojačevalnikom. Na sliki 3.4 sta oba senzorja vezana tako, da je na izhodu vezja pozitiven potencial.
Ker gre za invertirajoč ojačevalni sistem, uporabimo negativno napajanje operacijskega ojačevalnika
(-UC). Prednost take rešitve je, da je izhodna notranja upornost vezja zelo majhna in ne občuti vhodne
notranje upornosti digitalnega vhoda. Slabost je časovna zakasnitev, ki jo povzroči odziv
operacijskega ojačevalnika. Za časovno dober odziv moramo poiskati operacijski ojačevalnik z dobro
frekvenčno karakteristiko.
Sl. 3.4, vezava fototranzistorja in fotodiode z operacijskim ojačevalnikom
Vplivom okoliške svetlobe se v precejšni meri izognemo z uporabo infrardeče (IR) diode kot
oddajnika svetlobe in fototranzistorja oz fotodiode z IR filtrom. Prednost takega para je, da dioda
oddaja svetlobo v ozkem intervalu valovnih dolžin (običajno od 800 nm do 1000 nm), senzor pa je
občutljiv le na svetlobo v istem intervalu valovnih dolžin. Možnost, da bi sistem zmotili zunanji izvori
svetlobe, je v tem primeru bistveno manjša. Pri vezavi oddajne diode v električno vezje (slika 3.5)
moramo paziti, da tok skozi diodo ne preseže določne največje vrednosti Imax. Da omejimo tok skozi
diodo, moramo zaporedno z njo vezati upor Rd. Da ga določimo, moramo poznati kolensko napetost
Ud diode in napetost napajanja UC.
Sl. 3.5, vezje z infrardečo oddajno diodo in fototranzistorjem
Primer:
Določimo upor RD za IR diodo LD 261:
• podatki: Imax=50 mA, Ud=1.25 V, UC=8 V.
Tok skozi upor je enak toku skozi diodo, napetost na uporu pa je razlika med napajalno napetostjo in
kolensko napetostjo diode:
RU U
Id
C d
max
135 En. 3.1
Robotika Stran 29
Ker se izračunani upor redko ujema z vrednostmi, ki so v uporovni lestvici, moramo izbrati večjega od
izračunanega, da tok skozi oddajno diodo ni prevelik.
Vezje za sprejemno fotodiodo ali fototranzistor je enako kot v primeru fotoupora. Tudi postopek
določitve referenčnega upora Rref je enak, prav tako pa lahko zamenjamo mesti fototranzistorja (diode)
in referenčnega upora.
V primeru fotodiode
Sl. 3.6, IR oddajnik in sprejemnik v skupnem ohišju
Pari IR oddajnika in IR sprejemnika so v nekaterih primerih vgrajeni v posebna plastična ohišja (slika
3.6), tako da sta usmerjena eden proti drugemu - primer takega elementa sta CNY 37 in SPX 2498-2.
Oddajnik in sprejemnik sta lahko postavljena tudi vzporedno, tako da pride svetlobni tok do
sprejemnika le, če se odbije od predmeta, ki mora biti dovolj blizu elementa (recimo 5 mm) - tak
element je SG 101.
3.2.2 Induktivno stikalo
Z induktivnim stikalom ugotovimo prisotnost telesa iz feromagnetne snovi (jekla), če se le ta dovolj
približa občutljivemu mestu stikala. Maksimalno oddaljenost feromagneten snovi od stikala imenujejo
tudi preklopna razdalja dp. Na voljo imamo dva tipa induktivnih stikal, ki jih označujejo podobno kot
tranzistorje: tip NPN in PNP. Pri NPN induktivnem stikalu priključimo breme Rbr med pozitivni pol
napajanja UC in izhod stikala Uiz (slika 3.7), pri tipu PNP pa med negativni pol napajanja in izhod.
Osnovna funkcija induktivnega stikala je, da električni tok skozi breme teče v odvisnosti od tega, ali je
na preklopni razdalji feromagnetno telo ali ne. Glede na stanje, ko takega telesa ni (recimo temu
normalno stanje) lahko tok skozi porabnik teče (NC - normally closed) ali ne (NO - normally open).
Takrat ko skozi breme teče električni tok, je napetost na bremenu za kak volt manjša od napetosti
napajanja.
Induktivna stikala delimo glede na polariteto (NPN, PNP), normalno stanje (NC, NO) in preklopno
razdaljo (običajno je od 1 mm do 15 mm). Med važnejšimi podatki je tudi največji dovoljeni tok skozi
breme, dovoljena napetost napajanja, maksimalna možna frekvenca menjavanja stanja itd.
Robotika Stran 30
__________________________________________________________________________________
Sl. 3.7, priključitev induktivnega tipala na digitalni vhod
Če želimo povezati induktivno stikalo z digitalnim vhodom, ni važno kolikšna je upornost bremena,
zato raje izberemo večjo (recimo 10 k), da ne trošimo električnega dela brez potrebe. Ker je
napajanje indukcijskih stikal običajno večje od 5 V, je lahko izhodna napetost UIz večja od napetosti
logične 1. V tem primeru dodamo omejilnik napetosti z uporom Rz in Zenerjevo diodo z Zenerjevo
napetostjo manjšo od 5 V (slika 3.7). Pri vmesnikih CMC-S1 in CMC-S2 to ni potrebno, ker ima vsak
bit digitalnega vhoda omejilnik napetosti že vgrajen.
Ugotoviti moramo še, kakšno je logično stanje na izhodu induktivnega stikala takrat ko v bližini ni
feromagnetnega telesa. Stanje je odvisno je od polaritete in normalnega stanja, kar lahko prikažemo v
tabeli:
NPN PNP
NO 1 (UIz UC) 0 (UIz 0V)
NC 0 (UIz 0V) 1 (UIz UC)
Induktivna stikala med drugim uporabljajo za določanje pomika orodja pri računalniško krmiljenih
strojih. Orodje (recimo sveder) se giblje premo proti obdelovancu. Pravokotno na smer gibanja orodja
namestijo induktivno stikalo in tako določijo, kje naj se orodje ustavi. Prav tako ga lahko uporabimo
za merjenje števila obratov orodja. Jekleno paličico pritrdimo na os orodja, induktivno stikalo pa
namestimo tako, da se mu paličica pri vsakem obratu približa na manj ko je preklopna razdalja.
3.2.3 Magnetno stikalo - hermetični kontaktnik
Robotika Stran 31
Magnetno stikalo je podobno indukcijskemu stikalu, le da je za preklop stikala potrebno magnetno
polje, ki je lahko posledica bližine trajnega magneta ali tuljave (dušilke). V običajni izvedbi je stikalo
razklenjeno ob odsotnosti magnetnega polja. Osnovni tehnični podatek za magnetno stikalo je največji
dovoljen tok skozi stikalo.
Magnetna stikala uporabljamo v podobne namene kot induktivna stikala, razlika je le v tem, da je za
njihov preklop potrebna bližina vira magnetnega polja, kar je v marsikaterem primeru teže zagotoviti
kot pri induktivnih stikalih, kjer zadošča že bližina feromagnetne snovi.
3.2.4 Komparator napetosti
Pri merjenju fizikalnih količin imamo pogosto opraviti z merilnimi sistemi, ki neelektrično količino
pretvorijo v električno napetost, pri čemer velja, da je električna napetost zvezna funkcija merjene
količine. Niso pa redki primeri, pri katerih nas zanima le, ali je merjena količina presegla določeno
vrednost ali ne. Če gre za računalniško vodenje procesa, v tem primeru ni potrebno uporabiti analogni
vhod za merjenje električne napetosti, potrebujemo le električno vezje, ki primerja izhodno napetost
merilnega sistema z neko referenčno napetostjo. Takemu vezju rečemo komparator napetosti.
Najenostavneje sestavimo komparator napetosti z operacijskim ojačevalnikom. Na neinvertirajoči
(sofazni) vhod operacijskega ojačevalnika vodimo napetost izhoda merilnega sistema U+, na
invertirajoči (protifazni) pa referenčno napetost U- (slika 3.8). Za realni operacijski ojačevalnik velja,
da je izhodna napetost nekaj milijon krat večja od razlike vhodnih napetosti, hkrati pa ne more biti
izven intervala napajanja ojačevalnika. To pomeni, da je v primeru, ko je U+ > U-,,napetost na izhodu
za okoli 0.7 V manjša od pozitivnega napajanja operacijskega ojačevalnika, ko pa je U+ < U-, pa je
izhodna napetost okoli 0.7 V večja od negativnega napajanja. Kadar uporabimo operacijski
ojačevalnik kot komparator in njegov izhod vodimo na digitalni vhod računalniškega vmesnika, je
najbolje, da izberemo takega, ki ima spodnje napajanje 0 V (LM 324, LM 358), zgornje napajanje UC
pa je lahko kar + 5 V. Tako je izhodna napetost pri U+ < U- okoli 0 V (logična 0) in pri U+ > U- malo
manj kot 5 V (logična 1). Kadar sta napajanji drugačni (recimo + 10 V in - 10 V), moramo med
izhodom komparatorja in digitalnim vhodom umestiti omejilnik napetosti (upor in Zenerjevo diodo).
Sl. 3.8, komparator napetosti z operacijskim ojačevalnikom
Sprememba napetosti na izhodu komparatorja z operacijskim ojačevalnikom je zakasnjena za
spremembo vhodne napetosti. Pri hipni spremembi vhodne napetosti se izhodna napetost spreminja
postopoma. Odzivnost navajajo kot spremembo napetosti na časovno enoto (angleško slew rate) in je
za LM 324 0.6 V/µs, za 741 pa 0.5 V/µs). Za povečanje napetosti iz stanja logične 0 v stanje logične 1
bi torej kljub temu potrebovali le okoli 8 µs. Za še hitrejši odziv moramo uporabiti operacijske
ojačevalnike z negativnim spodnjim napajanjem, kjer dosežemo celo 20 V/µs ali več (741S, TL081,
TL082, TL084).
Robotika Stran 32
__________________________________________________________________________________
Pogosto je napetot merilnega sistema obremenjena s šumom. Do nezaželenih preklopov komparatorja
pride, kadar se referenčna napetost in napetost merilnega sistema razlikujeta manj kot je amplituda
šuma. Težavam se izognemo tako, da komparator napetosti zamenjamo s Schmittovim sprožilnikom,
ki pa ga na tem mestu ne bomo obravnavali.
Zgled:
Skicirajmo vezje s komparatorjem napetosti, ki bo za svetlobno zaporo natančno določilo preklop iz
logične 0 v logično 1. Napetost preklopa naj bo nastavljiva s potenciometrom, medtem ko fotoupor
vežemo v delilnik napetosti !
Rešitev:
Na en vhod komparatorja napetosti priključimo delilnik s fotouporom in na drugi vhod drsni
potenciometer (slika 3.9).
Sl. 3.9, komparator napetosti za natančno določitev preklopa svetlobne zapore
Namesto komparatorja je včasih primernejša uporaba Schmittovega sprožilnika, ki ga prav tako
naredimo na osnovi operacijskega ojačevalnika.
Robotika Stran 33
4 Analogni izhod
Uporaba digitalnega izhoda omogoča le dve stanji. Če z njim krmilimo enosmerni elektromotor to
pomeni, da se lahko vrti ali pa ne, ne moremo pa vplivati na število obratov (fizikalno bi temu rekli
frekvenca vrtenja). Električna žarnica, ki je krmiljena z digitalnimi izhodi, lahko le sveti, ali pa ne.
Niso pa redki primeri, ko z računalnikom želimo krmiliti električno moč med 0 in P0 s kar največ
vmesnimi stanji, tako da bi dosegli skoraj zvezno nastavljivost. Poglejmo možnost, ki nam jo daje
osembiten digitalni izhod. Najprej pomislimo na to, da bi z njim vklapljali ali izklapljali osem žarnic z
enako močjo P0/8 in jih imeli kar se da blizu. Na ta način bi lahko dosegli osem različnih svetilnosti,
odvisno pač od tega, koliko žarnic bi bilo vključenih. Toda osembitno število omogoča 256 različnih
kombinacij (desetiško od 0 do 255). Prispevki posameznih bitov pa niso enaki, ampak naraščajo proti
višjim bitom s faktorjem 2. Na enak način lahko izberemo žarnice z močjo P0/2, P0/4, P0/8 ... do
P0/256, ki jih lahko računalnik vklaplja v 256 različnih kombinacijah od 0, P0/256, 2 P0/256 do 255
P0/256.
Taka rešitev pa ni niti praktična niti univerzalna. 'Zvezno' računalniško krmiljenje električnih naprav
je možno, če imamo analogni izhod, ki je v bistvu računalniško krmiljen enosmerni vir napetosti.
4.1 Analogni izhod kot vir napetosti
Osnova analognega izhoda je n-bitni digitalno analogni pretvornik. Njegova funkcija je, da podatek na
digitalnem izhodu (i) z vrednostjo med 0 in 2n-1, spremeni v sorazmerno analogno napetost med 0 V
in U0MAX (slika 4.1):
U Ui
Out OMAX n
2 1 En. 4.1
Vmesnika CMC-S1 in CMC-S2 imata osembitni AD pretvornik (n=8) z območjem med 0V 5 V. V
tem primeru velja enačba:
Ui i
Out
52 1
58
V V255
En. 4.1
Sl. 4.1, DA pretvornik v povezavi z računalnikom
Najvišji bit (angleška kratica zanje je MSB, most significant bit) vklaplja napetost Ur/2 (Ur je
referenčna napetost DA pretvornika), nato pa po vrsti navzdol Ur/4, Ur/8 do Ur/2n. Izhodna napetost
digitalno analognega pretvornika je vsota napetosti, ki jih vklopijo posamezni biti. Zveza med
analogno napetostjo in n-bitnim številom je tako sledeča:
n
nn
rOut
DDDUU
2...
22
0
2
2
1
1 En. 4.2
Največjo izhodno napetost in s tem območje DA pretvornika dobimo pri vrednosti 2n-1, ko so vsi biti
v stanju logične 1:
Robotika Stran 34
__________________________________________________________________________________
12
11
2
1..
2
1
2
121 nrnrOMAX UUU En. 4.3
Povečanje dvojiško zapisanega števila za 1 povzroči povečanje izhodne napetosti za ULSB (angl. LSB,
less significant bit), ki je kar enako napetosti, ki jo prispeva najnižji bit:
UU
LSBr
n
2 En. 4.4
ULSB pa dobimo tudi tako, da maksimalno izhodno napetost U0 delimo številom 2n-1 (preverite sami !).
Za izbrano napetost UOut analognega izhoda moramo izračunati podatek i, ki ga pošljemo na analogni
izhod:
OMAX
Outn
U
Ui )12(round En. 4.5
kar v primeru vmesnikov CMC-S1 in CMC-S2 pomeni:
5V255round OutU
i En. 4.6
Oznako round smo prevzeli po funkciji iz Turbo Pascala in pomeni zaokroževanje rezultata na
najbližje celo število.
Preprost DA pretvornik lahko naredimo z operacijskim ojačevalnikom in sicer na osnovi seštevalnika
napetosti. Kljub temu je enostavneje uporabiti enega od številnih DA pretvornikov, ki jih dobimo kot
integrirana vezja. Široko uporaben je poceni, osembitni DA pretvornik z oznako DAC 08 CP, ki ga
vežemo neposredno na digitalni izhod.
Delovanje analognega izhoda vmesnikov CMC-S1 ali CMC-S2 najhitreje preizkusimo tako, da z
voltmetrom merimo napetost (slika 4.2) in poženemo testni program Cmc test (slika 4.Napaka!
Zaznamek ni definiran.). Za spremembo napetosti na analognem izhodu moramo z miškinim
kazalcem nastaviti višini drsnika, Napetost se spreminja v korakih 5V/255 (=ULSB). Pod stolpcem, ki
grafično predstavlja napetost na analognem izhodu, je tudi njen decimalni izpis, nad stolpcem pa
maksimalna izhodna napetost.
Robotika Stran 35
Sl. 4.2, merjenje napetosti analognega izhoda z voltmetrom
4.2 Primeri uporabe analognega izhoda
Sl. 4.3, vezava ojačevalnika moči med analognim izhodom in bremenom
Analogni izhod lahko uporabimo na enak način kot sicer uporabimo nastavljiv vir napetosti.
Računalniški program pa mu lahko priredi tudi vlogo funkcijskega generatorja z izhodno napetostjo
poljubnih oblik, ne le tistih, ki smo jih sicer vajeni (sinusna, pravokotniška, trikotniška, žagasta).
Kadar pa z računalnikom želimo zvezno (zavedajmo se, da to pomeni skoraj zvezno) krmiliti žarnico,
grelnik, enosmerni elektromotor ..., pa je izhodni tok, kakršnega največ omogoča analogni izhod,
premajhen. Elektronski sklop, ki ga moramo dati med analogni izhod in motor imenujemo
ojačevalnik moči (slika 4.3). Osnovna lastnost ojačevalnika je, da ima veliko vhodno notranjo
upornost, ki za analogni izhod ne predstavlja hude obremenitve in zelo majhno izhodno notranjo
upornost tudi pri velikem izhodnem toku. Jasno je, da je treba ojačevalnik napajati, saj od zunanjega
vira napetosti dobi električno delo, ki se sprošča na bremenu (Rbr).
Robotika Stran 36
__________________________________________________________________________________
4.2.1 Emitorski sledilnik kot ojačevalnik moči
Najpreprostejši ojačevalnik moči naredimo s tranzistorjem. Vhodno napetost priključimo med bazo
tranzistorja in ozemljitev ter breme med emitor in ozemljitev. Takemu vezju pravimo emitorski
sledilnik (slika 4.4). Njegova pomanjkljivost je, da je izhodna napetost manjša od vhodne napetosti za
napetost UBE0, ki je potrebna za prevajanje električnega toka med bazo in emitorjem (pri silicijevih
tranzistorjih je to okoli 0.7 V). To seveda pomeni, da je v primeru, ko je vhodna napetost manjša od
kolenske napetosti med bazo in emitorjem tranzistorja (Uvh < UBE0) izhodna napetost Uiz praktično
0 V.
Sl. 4.4, emitorski sledilnik in odvisnost njegove izhodne napetosti od vhodne
................................................................................................................................................
Zgled:
Napetost analognega izhoda 5.0 V vodimo na vhod emitorskega sledilnika, ki ima na izhodu upor za
3.5 . Napetost napajanja vezja UC je + 8 V. Kolikšno mora biti najmanj ojačenje tranzistorja (), če
je največji možen tok analognega izhoda (v bistvu bazni tok IB) 10 mA. Izračunajte moč, ki se troši na
tranzistorju in izkoristek ojačevalnika. Iz tabele tranzistorjev (stran 13) izberite takega, ki ustreza.
Rešitev:
Napetost na bremenu Uiz = 5.0 V - UBE0 = 4.3 V. Tok skozi breme Ibr = Uiz/Rbr = 1.23 A. Ojačenje
dI
dI
I
I
c
b
c
b
123
Moč, ki se sprošča na tranzistorju, je:
W56.4 izcbrCE UUIP
Moč na bremenu in izkoristek ojačevalnika pa:
P I UU I
U Ibr br iz
C br
iz br
5 29 54. % W ;
Med tranzistorji navedenimi v tabeli bi bil zanesljivo primeren tranzistor z oznako BD649.
................................................................................................................................................
Kadar želimo imeti veliko tokovno ojačenje, vežemo tranzistorje v Darlingtonovo vezje. Če nočemo
povečati napetosti UBE0 je najbolje, da uporabimo komplementarno Darlingtonovo vezje (slika 4.5). Če
ima tranzistor T1 tokovno ojačenje 1 in T2 ojačenje 2, potem je ojačenje Darlingtonovega tranzsitorja
T':
' 1 2
Robotika Stran 37
Sl. 4.5, komplementarni Darlingtonovi vezji za npn in pnp tip tranzistorja
4.2.2 Ojačevalnik moči z operacijskim ojačevalnikom in tranzistorjem
Nelinearnost emitorskega sledilnika pri majhnih napetostih je mogoče odpraviti z uporabo
operacijskega ojačevalnika (slika 4.6). Vhodna upornost takega ojačevalnika moči je velika, saj je
vhodna napetost priključena med neinvertirajoči vhod ojačevalnika in ozemljitvijo. Povratna zveza
emitorja z invertirajočim vhodom zagotavlja, da je izhodna napetost enaka vhodni napetosti tudi ko je
Uvh < UBE0. To lahko pojasnimo z dejstvom, da je ojačenje operacijskega ojačevalnika zelo veliko (več
kot 105), zato je napetost invertirajočega vhoda in s tem tudi izhodna napetost praktično enaka vhodni
napetosti. Napetostno ojačenje ojačevalnika je 1.
Sl. 4.6, ojačevalnik moči z operacijskim ojačevalnikom in tranzistorjem
Vloga upora RB je omejitev baznega toka in s tem zaščita tranzistorja pred kratkim stikom na mestu
bremena. Računsko (ali eksperimentalno) lahko določimo tolikšen RB, da bosta tudi pri kratkem stiku
na izhodu kolektorski tok in sproščena moč na tranzistorju v mejah, ki jih izbrani tranzistor še prenese.
Ojačevalnik moči za pozitivno enosmerno napetost smo naredili z operacijskim ojačevalnikom z
enopolarnim napajanjem (kot je LM 358). Drugače je, kadar je vhodna napetost lahko pozitivna ali
negativna - takrat moramo uporabiti operacijski ojačevalnik z bipolarnim napajanjem (kot sta TL 081,
741), na izhodu pa morata biti komplementarna tranzistorja. Če poleg tega želimo še napetostno
ojačenje večje od 1, moramo povratno zvezo speljati preko delilnika napetosti (slika 4.7).
Podobno kot prej sklepamo, da je zaradi velikega ojačenja operacijskega ojačevalnika napetost
invertirajočega vhoda enaka vhodni napetosti. Enak potencial je tudi v točki T, torej je napetost na
uporu R2 enaka Uvh. Od tod izračunamo tok I2 skozi upor R2:
IU
R
vh2
2
Robotika Stran 38
__________________________________________________________________________________
Sl. 4.7, ojačevalnik moči za pozitivne in negativne vhodne napetosti
I_2\ =\ U_vh over R_2
Ker je vhodna upornost obeh vhodov operacijskega ojačevalnika zelo velika, je tok skozi upor R1 enak
toku I2. Sledeč tej predpostavki lahko določimo izhodno napetost:
U U
R
U
R
iz vh vh
1 2
1
2
1
R
RUU vhiz
Vezje na sliki 4.7 ima torej enako napetostno ojačenje kot neinvertirajoči (elektrometrski) ojačevalni
sistem, le da omogoča večje izhodne tokove.
4.3 Sprememba napetostnega območja analognega izhoda
Lahko se zgodi, da napetostno območje analognega izhoda ne ustreza našim potrebam. Vzemimo da
imamo na voljo območje med 0V in UOMAX želeli pa bi območje med -UO1 in +UO1 recimo napetost
med -10V in +10V zato da bi z analognim izhodom krmilili elektromotor v eni in drugi smeri ali da bi
imel analogni izhod vlogo vira izmenične napetosti.
Problem rešimo z odštevalnim vezjem z operacijskim ojačevalnikom (slika 4.8). Od napetosti
analognega izhoda UOut odštejemo napetost, ki jo dobimo na potenciometru U0 in njuno razliko
primerno ojačamo. Za vezje na sliki 4.8 velja sledeča zveza med izhodno (U'Out) in vhodno napetostjo
(UOut):
Robotika Stran 39
Sl. 4.8, vezje za spremembo napetostnega območja analognega izhoda
0
1
2 UUR
RU OutOut
Iz enačbe je razvidno, da vezje razliko dveh vhodnih napetosti tudi napetostno ojača za kvocient
R2/R1. Vezju zaradi te lastnosti rečemo tudi diferencialni ojačevalnik in se pogosto uporablja v merilni
tehniki.
Robotika Stran 40
__________________________________________________________________________________
5 Analogni vhod
Z digitalnim vhodom lahko preverimo le ali je osvetljenost površine velika ali ne, temperatura višja ali
nižja od izbrane temperature, telo dovolj blizu nekega mesta ali ne itd. Ni pa redko, ko želimo z
računalnikom natančneje meriti fizikalne količine. Da bi to dosegli moramo uporabiti analogni vhod,
ki dani električni napetosti priredi sorazmerno n-bitno število. Računalniško podprti merilni sistem
neelektrično fizikalno količino pretvori v električno napetost, to pa analogno digitalni pretvornik
(ADC) spremeni v digitalno obliko, ki jo računalnik lahko prebere na enak način kot podatek z
digitalnega vhoda.
5.1 Analogni vhod kot voltmeter
Analogni vhod temelji na analogno digitalnem pretvorniku (slika 5.1). n-bitni ADC merjeni analogni
napetosti UIn, ki je znotraj merilnega območja med UIMIN in UIMAX, priredi proporcionalno n-bitno
število i med 0 in 2n-1:
IMINIMAX
IMINInn
UU
UUi 12round En. 5.1
Sl. 5.1, AD pretvornik kot osnova analognega vhoda
Merjena napetost je zvezna količina, zato AD pretvornik zaokroži na tisto število i, ki najbolj ustreza
vhodni napetosti - odtod beseda round (funkcija v pascalu) v zgornji enačbi. Napetost, ki na vhodu
pretvornika lahko zavzame vse vrednosti med UIMIN in UIMAX, ima po pretvorbi le 2n stanj (vključno z
0). Napetostni interval, ki ustreza istemu stanju, je širok (UIMAX-UIMIN)/(2n-1). Polovica tega
napetostnega intervala zaradi zaokroževanja navzdol ali navzgor pomeni tudi maksimalno napako, ki
jo dodamo merjeni napetosti po pretvorbi. Ker je širina intervala obratno sorazmerna z 2n-1, je napaka
tem manjša, čim več bitni je pretvornik.
Iz povedanega logično sledi, da branju iz n-bitnega AD pretvornika sledi računanje napetosti po
enačbi:
12
nIMINIMAXIMINIn
iUUUU En. 5.2
Največ uporabljamo AD pretvornike, ki delujejo na principu zaporednega razpolavljanja (sukcesivna
aproksimacija). Postopek je podoben opisanemu algoritmu za pretvarjanje desetiškega zapisa v
dvojiškega. Pretvornik v prvem koraku postavi najvišji bit na 1, vse ostale na nič. Digitalno analogni
pretvornik, ki je del vsakega AD pretvornika, pretvori to število v ustrezno napetost. Če je ta večja od
merjene napetosti, se postavi najvišji bit na 0, sicer (manjša ali enaka) ostane na ena. Postopek se
ponovi po vrsti za vse nižje bite.
................................................................................................................................................
Zgled 1:
Oglejmo si primer pretvarjanja napetosti 4.2 V za osembiten analogno digitalni pretvornik (n=8) z
območjem od 0 do 5 V (UIMIN=0 V, UIMAX = 5 V). Najprej izračunajmo podatek, ki ga prebere
računalnik z AD pretvornika:
Robotika Stran 41
214V 0.5
V 2.412round 8
i
Poglejmo še, kako poteka AD pretvorba po metodi zaporednega razpolavljanja. Prispevek najnižjega
bita ULSB je 5 V/255 = 0.0196 V. Da bi AD pretvornik zaokroževal, mora pretvoriti napetost med 0 in
0.0098 V (ULSB/2) v 0, med 0.0098 V in 0.0294 V v 1 itd. Zato je treba izhodni napetosti digitalno
analognega pretvornika odšteti polovico intervala ( 0.01 V), kar je tudi maksimalna absolutna napaka
pretvorbe.
dvojiško št. desetiško UDAC vs. UIn bit
D(7) 1 0 0 0 0 0 0 0 128 2.51 - 0.01 4.20 1
D(6) 1 1 0 0 0 0 0 0 192 3.76 - 0.01 4.20 1
D(5) 1 1 1 0 0 0 0 0 224 4.39 - 0.01 > 4.20 0
D(4) 1 1 0 1 0 0 0 0 208 4.08 - 0.01 4.20 1
D(3) 1 1 0 1 1 0 0 0 216 4.23 - 0.01 > 4.20 0
D(2) 1 1 0 1 0 1 0 0 212 4.16 - 0.01 4.20 1
D(1) 1 1 0 1 0 1 1 0 214 4.20 - 0.01 4.20 1
D(0) 1 1 0 1 0 1 1 1 215 4.22 - 0.01 > 4.20 0
Sl. 5.2, vzorčenje napetosti glede na čas pretvorbe AD pretvornika
Po osmih korakih je stanje na izhodu AD pretvornika 1 1 0 1 0 1 1 0, to je desetiško 214, kar se ujema
s prejšnjim izračunom.
......................................................................
Za pretvarjanje vhodne analogne napetosti v dvojiški zapis potrebuje AD pretvornik ustrezen čas, ki
mu rečemo čas pretvorbe. Tipična vrednost zanj je od 2 µs do 1 ms, posebno hitri AD pretvorniki pa
dosežejo čas krajši od 10 ns. Čas pretvorbe nas omejuje pri vzorčenju hitro spreminjajočih se količin.
Velja pravilo, da se v času pretvarjanja vhodna napetost ne sme bistveno spremeniti, da je merjenje
signala še smiselno (slika 5.2).
Robotika Stran 42
__________________________________________________________________________________
Sl. 5.3, shema za preizkus delovanja dveh kanalov analognega vhoda
Nekoliko drugačno je pravilo pri obdelavi vhodnega signala s Fourierjevo transformacijo kjer velja, da
mora biti čas pretvorbe krajši od polovice nihajnega časa sinusne komponente z najvišjo frekvenco.
Pri ADC s časom pretvorbe 10 µs (100 000 meritev v sekundi) velja, da je najkrajši nihajni čas sinusne
komponente 20 µs kar ustreza signalu s frekvenco 50 kHz.
Delovanje analognih vhodov vmesnikov CMC-S1 in CMC-S2 preizkusimo tako, da na vhod vežemo
potenciometer (slika 5.3) in poženemo testni progam CMC (slika 5.Napaka! Zaznamek ni
definiran.). Zaradi velike vhodne notranje upornosti analognih vhodov lahko opazimo, da vhodi, ki
niso vezani, ne pokažejo vedno napetosti 0 V.
5.2 Primeri uporabe analognega vhoda
Analogni vhod je nepogrešljiva funkcija vmesnika pri računalniško podprtih merilnih sistemih. Pri
merjenju fizikalnih količin pa najpogosteje ne gre neposredno za električno napetost ampak merimo
temperaturo, silo, tlak, pH, položaj telesa, koncentracijo in pH raztopine itd. Naloga računalniško
podprtih merilnih sistemov je pretvoriti neelektrično fizikalno količino v primerno električno napetost.
Najpogostejši členi takih sistemov so tipalo (senzor), merilni pretvornik in enote za obdelavo signala
(ojačevalniki, električna sita itd). Posameznih enot ni mogoče vedno med seboj razlikovati, ker so
njihove funkcije večkrat združene.
5.2.2 Merjenje pomikov z uporovnim potenciometrom
Linearni uporovni potenciometer je najpreprostejši merilni pretvornik pomika v električno napetost.
Potenciometer z dolžino l napajamo z znano napetostjo UO, napetost UI pa merimo med drsnim
priključkom in ozemljitvijo, kjer z x označimo razdaljo med položajem drsnika in ozemljitvijo (slika
5.4). Med merjeno napetostjo in položajem drsnika velja sorazmernost, če je upornost bremena Rbr
mnogo večja od upornosti potenciometra RP:
Robotika Stran 43
U x Ux
lI O( ) ( ) 1 En. 5.3
Kadar omenjeni pogoj ni izpolnjen, je zveza med napetostjo in položajem drsnika bolj zapletena
(izpeljite sami !):
l
x
l
x
R
R
l
x
UxU
br
P
OI
11
)1()( En. 5.4
Očitno je, da merjena napetost ni sorazmerna z odmikom x, razen če velja RB >> RP, ko enačba 5.4
postane enaka enačbi 5.3.
Sl. 5.4, potenciometrsko merjenje položaja telesa
Kadar želimo meriti zasuke uporabimo namesto potenciometra z premim pomikom drsnika takega z
krožnim. V elektroniki se ti bolj pogosto uporabljajo in imajo polni zasuk navadno 270°. Enačba 5.5
je za ta primer:
Napaka! Predmetov ne morete ustvariti z urejanjem kod polj. En. 5.5
Pri računalniško podprtem merjenju pomikov uporabimo za UO referenčno napetost za 5.0 V ali enako
napetost analognega izhoda, napetost UI pa merimo z analognim vhodom. V tem primeru predstavlja
vhodna upornost analognega vhoda upornost bremena Rbr in je pri vmesnikih CMC-S1 in CMC-S2
tako velika (nad 10 M), da lahko brez obotavljanja privzamemo sorazmernost med merjeno
napetostjo in položajem drsnika.
Robotika Stran 44
__________________________________________________________________________________
6 Uvodne besede k robotiki
Sodobna tehnologija se razvija v smeri vse večje avtomatizacije, katere posledica je večja
produktivnost in zmanjševanje ročnega dela. Zaradi hitrega razvoja računalništva in informatike je
bilo mogoče avtomatizirano proizvodnjo voditi in nadzorovati z računalniki. Sčasoma so v proizvodnji
proces začeli uvajati robote, ki trenutno predstavljajo najvišji nivo avtomatizacije.
Čeprav so roboti v tehničnem smislu samo stroji, pa večina ljudi v njih gleda povsem drugače. V
slovarjih največkrat lahko preberemo, da so roboti stroji, ki so "videti in se obnašajo podobno kot
ljudje" (The Oxford Minidictionary). Besedo robot je za majhne, človeku podobne stroje, leta 1920
vpeljal češki pisatelj Karel Čapek v literarnem delu Rosum Universal Robots. V današnjem pomenu
besede je robot stroj, ki ga sestavljajo mehanski del (konstrukcija, motorji, zavore), računalniški del s
programsko opremo in tipala (senzorjev) za položaj posameznih segmentov robota, za sile, navore,
pospeške... V literaturi je mogoče prebrati bolj ali manj podobne definicije robota. Navedimo tisto, ki
jo navaja ugleden inštitut Robot Institute of America (RIA): "Robot je reprogramibilen,
večnamenski manipulator konstruiran tako, da na osnovi različnih programiranih gibov premika
materiale, polizdelke, orodja in specializirane naprave, da bi opravil določene naloge." Ker so
računalniško vodeni tudi mnogi avtomati lahko rečemo, da se robot loči od njih po tem, da v večji ali
manjši meri zaznava svoje stanje in stanje v okolici, kar prav tako vpliva na njegova dejanja. Robot se
pravočasno odloči in deluje tudi kadar se v okolici pojavijo ovire ali napake medtem ko avtomati v
takih okoliščinah v splošnem odpovejo. So prilagodljivi in tako zasnovani, da jih je samo s
spremembo programa mogoče uporabiti za opravljanje nove delovne operacije.
Robote razvrščajo v skupine na osnovi zelo različnih kriterijev. Najpogosteje navajajo delitev glede na
zahtevnost in zapletenost. V najnižjo stopnjo razvrščajo t.i. programabilne robote ali robote prve
generacije. Računalniški program krmili medsebojni položaj posameznih segmentov robota, kar
omogoča enostavno prilagoditev različnim opravilom. Vendar pa po pripravi robota za določeno
nalogo le to ponavlja na vedno enak način za kar je potrebno natančno določeno stanje v njegovi
okolici. Ker je slednje težko zagotoviti so razvili robote druge generacije (prilagodljivi roboti), ki se
lahko prilagodijo razmeram v ne natančno določenih pogojih v okolici. Njihovo gibanje je odvisno
tudi od podatkov, ki jih dobijo iz tipal, ki mu dajejo informacijo o zunanjih razmerah. Tretji generaciji
robotov rečejo inteligentni roboti. Opremljeni so s celovitejšimi sistemi za zaznavanje okolice z
računalniško obdelavo sprejetih informacij, razpoznavanjem okolice in samostojnim odločanjem o
nadaljnjih postopkih. Ti roboti vsebujejo elemente umetne inteligence.
Glede na obliko ločimo robote na take, ki so precej podobni človeku (antropomorfni) in take, ki so
bolj podobni strojem. Kljub temu pa za oboje velja, da njihove sestavine spominjajo na možgane,
čutila, roke noge ... Znanstveniki se ukvarjajo z razvojem robotskega vida, sluha, govora in celo
razmišljanja. Cilj tega je izdelati robota, ki bi v čim večji meri lahko nadomestil človeka pri
enostavnem ročnem delu ter pri delu v nevarnem in zdravju škodljivem okolju. Kljub stalnemu
napredku pa se niso povsem uresničile napovedi izpred dvajsetih let. Razlogov za to je več. Montaža
in opravila, ki so povezane z zaznavanjem sile dotika med robotom in okolico (brušenje, strganje,
poliranje), so se izkazala za zelo zapletena in jim sodobni, komercialno dosegljivi roboti, še niso kos.
Drugi razlog za počasnejše uvajanje robotov v proizvodnjo so ekonomske narave saj še vedno niso
ravno poceni. Običajno je potrebno obstoječo proizvodnjo organizirati povsem na novo, kar povzroči
dodatne stroške. Mnogi so mnenja, da je razlog za počasnejšo rast robotizacije tudi izobraževalni
sistem. Področje robotike je interdisciplinarno in vključuje elemente elektronike, strojništva,
računalništva, fizike, matematike in ekonomsko družboslovnih ved. Dandanes se razvite države
soočajo s pomanjkanjem kadrov s tako širokim znanjem, kot je potrebno za uspešno uvajanje robotov
in povezovanje različnih tehnologij. Sami roboti predstavljajo le del sodobne tehnologije. Sem štejemo
tudi numerično krmiljene orodne stroje (CNC), računalniško podprto načrtovanje (CAD - Computer
Aided Design), računalniško podprto proizvodnjo (CAM - Computer Aided Manufactoring),
avtomatsko skladiščenje, računalniško podprti merilni sistemi itd.
Robotika Stran 45
Ceneni in dostopni osebni računalniki vedno bolj izpodrivajo namenske procesorje naštetih
računalniških sistemov. Prostorsko porazdeljeni računalniški sistemi se med seboj povezujejo in tako
laže uskladijo proizvodnjo. Roboti pogosto strežejo avtomatskim strojem, podajajo polizdelke in jih
premeščajo s transportnih trakov in za tako delo je komunikacija med posameznimi računalniško
vodenimi sistemi zelo pomembna. Tak proizvodni sistem je običajno organiziran hierarhično in ima
lahko več ali manj nivojev. Na najnižjem nivoju računalniki vodijo avtomate, robote, transportne
trakove ... Več avtomatov in robotov, ki opravljajo zaključeno nalogo, povežemo v produkcijsko
celico, ki jo nadzoruje poseben računalnik, ki nadzoruje delo na najnižjem nivoju in ima nadrejeno
vlogo. Celotno delo nadzoruje računalnik na najvišjem nivoju in skrbi za pretok materialov in
polizdelkov. Pogosto je povezan z računalnikom, ki je namenjen upravljalskemu nivoju in mu
posreduje podatke, ki so pomembni za poslovne in razvojno strateške odločitve vodstva podjetja. Taka
organizacija je značilna za integralne proizvodne sisteme, ki so značilni za sodobno, prilagodljivo
maloserijsko proizvodnjo.
Kot že rečeno je robotika zelo široko področje. V okviru priročnika je snov izbrana in podana tako, da
daje bralcu splošno informacijo in omogoča, da pridobljeno znanje uporabi pri konstruiranju in
računalniškem vodenju preprostih modelov robotov. Model robota z vsemi osnovnimi lastnostmi
pravega robota lahko izdelamo sami ali ga sestavimo iz elementov zbirk FISCHER TECHNIK in
LEGO. Na začetku so opisane osnovne arhitekture robotskih rok in zapestja. Za vsako obliko robotske
roke je razloženo določanje položaja predmeta v prostoru. Sledi predstavitev problemov kinematike in
dinamične analize gibanja robota. Poglavje o krmiljenju robotov se opira na prvi del priročnika in
razlikuje med diskretnim in zveznim krmiljenjem položaja robotskega segmenta. Razloženi so
računalniški algoritmi za proporcionalno, PI in PID krmiljenje. Opisan je poenostavljen matematični
model gibanja robotskega segmenta v eni prostostni stopnji za vsakega od naštetih načinov krmiljenja.
Sledi opis elektronskih krmilnikov in principa servomotorja. Na koncu so na kratko opisani
najpogostejša tipala v robotiki.
Robotika Stran 46
__________________________________________________________________________________
7 Sestav in arhitektura robotov
V poglavju bomo najprej navedli osnovne enote robota in opisali njihove funkcije. Spoznali bomo
pojme in principe, ki so osnova robotike. Nekoliko podrobneje se bomo ukvarjali z elementi, ki
sestavljajo robotski manipulator in opisali njegovo zgradbo, arhitekturo in geometrijo.
Obdelana snov je del osnovnih znanj brez katerih ni mogoče razumeti delovanja robotov. Na tem
področju se z razvojem ni kaj dosti spremenilo in pričakovati je, da bo snov ostala uporabna in
aktualna tudi v prihodnje.
7.1 Osnovne enote robota
Osnovne enote sodobnega robota so manipulator, krmilje, ki pogosto vključuje elektronske sklope za
zaznavanje okolja, in procesna enota (slika 7.5). V nekaterih primerih sta krmilje in procesna enota
združena. V novejšem času specializirane procesne enote izpodrivajo ceneni osebni računalniki.
Robotski manipulator je običajno najbolj viden del robota in je dostikrat sinonim za celega robota. To
je najpomembnejši del robota, saj opravlja naloge na fizičnem nivoju. Sestavljajo ga podstavek,
segmenti in ročice, sklepi med segmenti, pogonski motorji, protiuteži in amortizerji, merilniki položaja
posameznih segmentov, različna tipala, prijemalo... Krmilje je vezni člen med računalnikom in
manipulatorjem. Osnovna naloga krmilja je upravljanje motorjev na osnovi signalov tipal in podatkov,
ki mu jih posreduje računalnik, zato je osnovna funkcija krmilja pretvarjanje moči. Ker so na
manipulatorju le tipala, so potrebna tudi elektronska vezja, ki signale tipal ustrezno obdelajo
(ojačevalniki, filtri). Informacijo o stanju robotskega manipilatorja krmilje posreduje računalniku, zato
je pogosto del krmilja tudi digitalizacija teh signalov (AD pretvorniki). Informacijo, ki jo krmilje
dobiva od računalnika, je pogosto potrebno pretvoriti v analogno obliko (DA pretvorniki). Procesna
enota oz. računalnik omogoča programiranje robota. V pomnilniku ima torej program, ki vsebuje
podatke o nalogi manipulatorja, njegovih gibih in delovanju. Sočasno s krmiljenjem manipulatorja
računalnik zbira podatke o njegovem stanju in na tej osnovi prilagaja delovanje manipulatorja. Če
želimo robota pripraviti za drugačno nalogo, doživi največjo spremembo ravno računalniški program.
Sl. 7.5 Osnovne enote sodobnega robota
7.2 Elementi robotskega manipulatorja
Robotski manipulator sestavljajo večsklepna mehanska roka, zapestje in prijemalo, ki je zaključni
element manipulatorja. Osnovni elementi manipulatorja so togi segmenti, ki so med seboj povezani s
Robotika Stran 47
sklepi. Tipični sklepi omogočajo rotacijo okoli skupne osi dveh segmentov (rotacijski sklep) in
translacijo vzdolž skupne osi (primer tega je teleskopski sklep) (slika 7.6). Za rotacijski sklep
navedemo kot zasuka glede na izbrano os enega od segmentov, za translacijski sklep pa dolžino
pomika glede na izbrano izhodišče.
Sl. 7.6 Skici preprostih sklepov s simboloma zanju
Sklepi lahko omogočajo vrtenje okoli največ treh med seboj pravokotnih osi, možna je tudi
kombinacija rotacije in translacije v istem sklepu itd. Pri obravnavi robotskih rok in zapestij bomo
zaradi preglednosti navajali le sklepa, ki omogočata bodisi eno rotacijo ali eno translacijo. Zasuke ali
translacije v sklepih poganjamo z neposredno namestitvijo električnih motorjev v sklepe ali preko
jermenic, lahko pa tudi pnevmatsko ali hidravlično.
Iz geometrije je znano, da moramo za določitev položaja točkastega telesa podati tri koordinate ne
glede na tip koordinatnega sistema. Iz tega sledi, da mora tudi robotska roka imeti najmanj tri sklepe
oziroma tri prostostne stopnje, če z njo želimo premeščati predmete v treh dimenzijah. Netočkastim
telesom moramo poleg položaja težišča določiti tudi orientacijo v prostoru, kar opišemo s tremi koti. V
primeru manipulatorja določa orientacijo predmeta zapestje na koncu robotske roke za kar so prav
tako potrebni najmanj trije sklepi oziroma tri prostostne stopnje. Poljuben položaj in orientacija
predmeta torej zahteva najmanj šest prostostnih stopenj, medtem ko je število sklepov lahko večje
(redundantni manipulatorji).
7.3 Oblike robotskih rok
Čeprav manipulatorje prilagodimo različnim opravilom in imajo splošne lastnosti, morajo pri
njihovem konstruiranju upoštevati skupino nalog, ki jim bo namenjen (recimo varjenje, montaža in
streženje strojem ob tekočem traku). Tip opravil v marsičem določa parametre robota in njegovo
obliko.
Kinematično najenostavnejša je kartezična robotska roka (slika 7.7). Ima tri translacijske sklepe
(oznaka TTT), ki premikajo vrh roke v treh med seboj pravokotnih smereh. Uporabljajo jih za
montažo elementov na ravnih površinah, v skladiščih s policami in pri transportu.
Robotika Stran 48
__________________________________________________________________________________
Sl. 7.7 Kartezična robotska roka
Sl. 7.8 Cilindrična robotska roka
Podobna je roka, ki ima za osnovo cilindrični koordinatni sistem (slika 7.8). Prvi sklep je rotacijski in
z vrtenjem okoli navpične (z) osi. Preostala dva sklepa sta translacijska, eden v navpični in drugi v
vodoravni smeri (oznaka RTT).
Iz geometrije poznamo tudi polarni koordinatni sistem in tudi ta se je izkazal za primerno osnovo
polarne robotske roke (slika 7.10). Ima dva rotacijska sklepa za vrtenje okoli navpične osi in okoli
vodoravne smeri in en translacijski sklep, ki pomika vrh robota v smeri zadnjega segmenta (RRT).
Primera s to zgradbo sta Stanford in Unimation.
Robotika Stran 49
Sl. 7.9 roka SCARA
Prav tako dve rotaciji in eno translacijo ima robotska roka, ki je znana pod imenom Scara (slika 7.9).
Podnožje je vrtljivo okoli navpične osi, translacija pa je mogoča v navpični smeri kot pri cilindričnem
robotu (RTR). Tudi drugi rotacijski sklep je vrtljiv okoli navpične osi, ki pa ne sovpada z osjo prve
translacije. Taka roka je primerna za montažna dela.
Sl. 7.10 Polarna robotska roka
Robotika Stran 50
__________________________________________________________________________________
Sl. 7.11, Členasta robotska roka
Najbolj antropomorfno obliko ima členasta robotska roka s tremi rotacijskimi sklepi (7.11). Podnožje
je vrtljivo okoli navpične osi, druga dva sklepa pa okoli vzporednih, vodoravnih osi (oznaka RRR). Ta
oblika omogoča veliko prilagodljivost. V rabi sta dve podzvrsti členaste roke. Roka s komolcem (znan
je robot PUMA) ima vse tri motorje nameščene v sklepih medtem. Roka s paralerogramsko obliko
drugega segmenta ima pogon tretjega segmenta nameščen na prvem segmentu (robot Cincinnati
Milacron T3 735). Ker težo motorjev nosi prvi segment sta lahko drugi in tretji segment mnogo lažja in
motorja za drugi in tretji sklep šibkejša. V dinamičnem smislu ga je laže obvladati, medtem ko je
krmiljenje položaja enostavnejše za členasto roko s komolcem.
7.5 Robotsko zapestje
Opisane oblike robotskih rok omogočajo pozicioniranje vrha manipulatorja na izbrano mesto v
prostoru. Na vrhu manipulatorja je običajno pritrjeno zapestje, ki omogoča poljubno orientacijo
predmeta v prostoru. Najbolj univerzalno zapestje sestavljajo trije rotacijski sklepi.
Osi vrtenja dveh sosednjih sklepov sta med seboj pravokotni ne glede na trenuten zasuk posameznega
sklepa, kar prikazuje slika 7.12. Mogoče so tudi drugačne rešitve vendar je omenjena v kinematičnem
smislu najenostavnejša saj pozicioniranje v prostoru lahko obravnavamo ločeno od orientacije v
prostoru. Zapestje ima lahko tudi enega ali dva sklepa, kar zmanjša število prostostnih stopenj
robotskega manipulatorja. Zapestje je zelo pomembno, saj izvede zadano nalogo, medtem ko robotska
roka le postavi vrh robota na želeno mesto.
Sl. 7.12, Sferično robotsko zapestje s tremi prostostnimi stopnjami
Robotika Stran 51
Pomemben pojem je tudi delovni prostor robotskega manipulatorja. Pomeni množico točk, ki jih
doseže konica robotske roke oziroma robotsko zapestje. Delovni prostor je pomemben podatek
robotskega manipulatorja in je odvisen od oblike in dimenzij robotske roke.
Robotski manipulator s členasto robotsko roko skupaj s sferičnim zapestjem je shematično prikazan na
sliki 7.13.
Sl. 7.13, Robotski manipulator - roka in zapestje
Robotika Stran 52
__________________________________________________________________________________
8 Kinematika robotskega manipulatorja
Kinematika je veja mehanike, v kateri preučujemo gibanje, ne da bi se zanimali za vzroke gibanja. Za
razliko od dinamike ne išče torej povezav med silami, navori in masami in gibanjem telesa ampak je
predmet obravnave le opis geometrijskih razmer (razdalje, koti, ploskve in prostori), hitrosti in
pospeškov teles, ki se gibljejo. Za obvladovanje robotskega manipulatorja moramo poznati njegovo
kinematiko, temu sledi obravnava dinamike in le na tej osnovi je mogoče zasnovati optimalni način
krmiljenja. V splošnem se pri kinematiki robotskega manipulatorja srečujemo z dvema vrstama
problemov.
Neposredna (direktna) naloga je za dane spremenljivke robotskih sklepov v roki in zapestju (kote za
rotacijske in razdalje za translacijske sklepe) določiti položaj vrha robota in orientacijo predmeta, ki ga
prenaša. Manipulator ima v svojih sklepih vgrajena tipala (potenciometre, enkoderje), ki merijo
položaj enega segmenta glede na drugega. Podatki se na osnovi geometrijskega modela, ki opisuje
manipulator, uporabijo za izračun mesta in orientacije predmeta.
Posredna (inverzna) naloga je določiti stanja sklepov manipulatorja , da bi bil vrh robota na
določenem mestu v prostoru in bi imel predmet, s katerim robot dela, določeno orientacijo v prostoru.
Problem je enostavnejši, če ločeno obravnavamo mesto v prostoru (odvisno je od robotske roke) in
orientacijo v prostoru. Žal je le ta poleg od kotov in v sklepih zapestja odvisna tudi od mesta vrha
robotske roke, zato je reševanje inverznih problemov v kinematiki bolj zapleteno od neposrednih.
Reševanje kinematičnih problemov je za poljuben robotski manipulator sorazmerno zapleteno in
predvsem zamudno. Najprikladnejše matematično orodje za opis odnosov med danim predmetom in
izbranim osnovnim koordinatnim sistemom so homogene transformacije, ki spadajo v področje
linearne algebre. Opis poljubnih manipulatorjev s homogenimi transformacijami po obsegu presega
namen priročnika, zato je na osnovi znanih enačb analitične geometrije obravnavana le kinematika
osnovnih petih oblik robotov. Problematika določanja orientacije predmeta v prostoru je le ilustrirana s
poenostavljenim zgledom. Podane so le izhodiščne enačbe za določitev hitrosti in pospeškov.
Sl. 8.1, kinematika cilindrične robotske roke
8.1 Kinematika osnovnih oblik robotskih rok
Za določitev položaja predmeta v prostoru moramo najprej določiti osnovni koordinatni sistem.
Običajno je to kartezični koordinatni sistem, ki je neodvisen od položaja oz. gibanja posameznih
Robotika ¸ Stran 53
__________________________________________________________________________________
segmentov robotske roke. Zaradi tega je najenostavnejša obravnava kartezične robotske roke, saj
lahko osnovni koordinatni sistem postavimo tako, da osi sovpadajo s smerjo pomikov posameznih
translacijskih sklepov (slika 7.7).
Drugače je s cilindrično robotsko roko. Že ime pove, da je za opis roke primeren cilindrični
koordinatni. Neposredna naloga zahteva izračun koordinat x in y kartezičnega sistema na osnovi
razdalje vrha robota od osi vrtenja (r) in kota, ki ga določa sklep v podnožju (). Očitno je, da je
koordinata z kar enaka višini h, ki je odvisna od navpičnega translacijskega sklepa. Zapišimo enačbe
za izračun vseh koordinat:
z h x r y r , cos , sin En. 8.1
Inverzni izračun zahteva določitev kota in razdalj obeh translacijskih sklepov:
h z r x yy
x , , arctan 2 2 En. 8.2
Polarno robotsko roko je enostavno opisati v polarnem koordinatnem sistemu (slika 8.2). Rešitev
direktne naloge podajajo znane enačbe za izračun koordinat kartezičnega koordinatnega sistema:
Sl. 8.2, kinematika polarne robotske roke
r r' sin
x r sin cos
y r sin sin
z r a cos En. 8.3
Podobno je z izračunom kotov v sklepih in pomikom r na osnovi znanih koordinat kartezičnega
sistema:
arctany
x
arctan
x y
z a
2 2
En. 8.4
Robotika Stran 54
__________________________________________________________________________________
Robotska roka SCARA (slika 8.3) geometrijsko ne ustreza nobenemu koordinatnemu sistemu, zato je
za rešitev neposredne kinematične naloge potreben kratek izračun. Višino vrha robota h določa
translacijski sklep, kot 1 med ročico a in osjo x je odvisen od rotacijskega sklepa v podnožju, sklep,
ki povezuje ročici a in b, pa določa kot 2. Velja:
z h x a b y a b ; cos cos( ); sin sin( ) 1 1 2 1 1 2 En. 8.5
Nekoliko več računanja je za rešitev inverzne naloge. Trivialno je določiti višino h, ki je kar:
h z En. 8.6
Sedaj določimo kot 2. Ker velja, da je kot = -2 in cos(-2) = - cos2 lahko uporabimo kosinusov
izrek v trikotniku s stranicami a, b in c:
ab
bayx
2
2222
2
cos En. 8.7
Rešitev naloge pa ni enolična, saj roka lahko doseže točko T na dva načina, kar je razvidno na desnem
delu slike 8.3. Da določimo obe možni rešitvi upoštevamo dejstvo, da gre rešitev iskati med - in +
in ker je kosinus soda funkcija velja:
ab
bayx
2
2222
arccos En. 8.8
Sl. 8.3, kinematika robotske roke SCARA
Iz znane trigonometrične zveze:
Robotika ¸ Stran 55
__________________________________________________________________________________
tansin
cos
b
a b
in dejstva da velja , cos cos 2 in sin sin 2 izpeljemo:
2
21
cos
sinarctanarctan
ba
b
x
y En. 8.9
Ostane nam še kinematika členaste robotske roke (slika 8.4). Najprej izrazimo koordinato z:
z H a b cos cos( ) 1 1 2 , En. 8.10
Sl. 8.4, kinematika členaste robotske roke
nato projiciramo razdaljo c na ravnino xy:
c a b' sin sin( ) 1 1 2 En. 8.11
kar porabimo za izračun koordinat x in y:
cossinsin 211 bax En. 8.12
sinsinsin 211 bax En. 8.13
Pri reševanju inverznega problema najprej določimo kot :
arctany
x En. 8.14
Ostala dva kota določimo na podoben način kot v primeru robotske roke SCARA. Velja:
Robotika Stran 56
__________________________________________________________________________________
in zato
Dab
baHzyx
2
22222
2cos En. 8.15
in tudi v tem primeru dobimo dve rešitvi:
2 arccosD En. 8.16
1
2 2
2
2
arctan arctan
sin
cos
x y
z H
b
a En. 8.17
Tako smo zapisali enačbe, s katerim opišemo položaj vrha robotske roke. Ostane še orientacija
končnega prijemala, katerega orientacija v prostoru je odvisna tako od položaja posameznih
segmentov robotske roke kot od robotskega zapestja. Analitična geometrija za reševanje direktnega in
inverznega kinematičnega problema ni primerna. Mnogo primernejše matematično orodje so
homogene transformacije. Za njihovo razumevanje je potrebno znanje osnov linearne algebre.
8.2 Homogene transformacije
Precejšen del robotske kinematike se ukvarja z opisom položaja in orientacije togega telesa v prostoru.
V ta namen moramo določiti osnovni koordinatni sistem, ki miruje glede na delovni prostor
manipulatorja in več koordinatnih sistemov, ki so "pripeti" na njegove gibajoče segmente. Zaradi
zasukov in pomikov v sklepih manipulatorja pride tudi do rotacij in translacij enega koordinatnega
sistema glede na drugega in od tod nujnost preračunavanja koordinat enega koordinatnega sistema v
drugega. Ločeno bomo obravnavali rotacije in translacije koordinatnih sistemov in uvedli homogene
transformacije, ki oboje povezujejo v enotno transformacijsko matriko R.
8.2.1 Rotacije
Sl. 8.5, koordinatni sistem pripet na togo telo
Na sliki 8.5 je prikazano togo telo (kvader), na katerega je pripet koordinatni sistem ox1 y1 z1 z
enotinimi vektorji [i1, j1, k1] vzdolž osi x1, y1 in z1. Koordinate točke P na kvadru bi radi izrazili s
koordinatami iste točke v nerotiranem, referenčnem koordinatnem sistemu ox0 y0 z0 z enotinimi
Robotika ¸ Stran 57
__________________________________________________________________________________
vektorji [i0, j0, k0]. Vektor p, ki sega od koordinatnega izhodišča do točke P, torej lahko izrazimo
glede na koordinate ox0 y0 z0 kot
p i j k0 0 0 0 p p px y z0 0 0 En. 8.18
ali z glede na ox1 y1 z1 kot
p i j k1 p p px y z1 1 1 1 1 1 En. 8.19
Ker predstavljata p0 in p1 isti vektor p lahko izrazimo njegovo x komponento v koordinatnem sistemu
ox0 y0 z0
p p p px x y z0 1 1 1 1 p i p i i i j i k i0 0 0 1 0 1 0 1 0 En. 8.20
Podobne so formule za p0y in p0z
p p p py x y z0 1 1 1 1 p j p j i j j j k j0 0 0 1 0 1 0 1 0 En. 8.21
p p p pz x y z0 1 1 1 1 p k p k i k j k k k0 0 0 1 0 1 0 1 0 En. 8.22
Vse tri enačbe lahko zapišemo v obliki:
p R p0 0
1
1 En. 8.23
kjer je
010101
010101
o10101
01
kkkjki
jkjjji
ikij.ii
R En. 8.24
Podobno lahko izrazimo koordinate v sistemu ox1 y1 z1 z znanimi koordinatami v sistemu ox0 y0 z0 :
p p p px x y z1 0 0 0 p i p i i i j i k i1 1 0 1 0 1 0 1 0 1 En. 8.25
in v matrični obliki
p R p1 1
0
0 En. 8.26
kjer je
101010
101010
101010
1
0
kkkjki
jkjjji
ikij.ii
R
'
En. 8.27
Matrika R 1
0 je inverzna matriki R 0
1. Ker so produkti komutativni (i0· j0 = j0· i0) lahko trdimo, da je
T1011
001 RRR
En. 8.28
Matriki, katera inverzna matrika je enaka transponirani matriki, rečemo ortogonalna matrika.
Determinanti matrik 8.24 in 8.27 sta 1, če pa se omejimo na desnosučni koordinatni sistem pa velja
da je det R 0
1=1.
Naj bo koordinatni sistem ox1 y1 z1 za kot zavrten okoli osi z0. Določimo transformacijsko matriko
R 0
1 = Rz,
, ki nam omogoča izračun koordinat v nezavrtenem sistemu ox0 y0 z0 . Iz slike 8.6 je razvidno,
da je
En. 8.29
vsi ostali produkti pa so nič. Matrika 8.24 ima torej obliko:
Robotika Stran 58
__________________________________________________________________________________
Sl. 8.6, rotacija okoli osi z0
100
0
0
cossin
sincos
Φz,R En. 8.30
Če koordinatni sistem ox1 y1 z1 zavrtimo za kot okoli osi xo, dobimo matriko Rx,
cossin
sincos
0
0
001
ψx,R En. 8.31
in v primeru vrtenja okoli osi y0 za kot
cossin
sincos
0
010
0
θy,R En. 8.32
Če je koordinatni sistem ox1 y1 z1 pripet na prijemalo robotskega manipulatorja, potem opisane
rotacijske enačbe lahko interpretiramo tudi kot opis orientacije prijemala glede na osnovni koordinatni
sistem ox0 y0 z0. Stolpci v matriki R 0
1 predstavljajo smerne kosinuse koordinatnih osi ox1 y1 z1 glede na
koordinatni sistem ox0 y0 z0. Tako prvi stolpec (i1i0, i1j0, i1k0)T določa smer osi x1 glede na koordinate
ox0 y0 z0.
8.2.2 Zaporedje rotacij
Vzemimo, da matrika R 0
1 predstavlja rotacijo koordinatnega sistema ox1 y1 z1 glede na sistem ox0 y0 z0
in matrika R 1
2 rotacijo koordinatnega sistema ox2 y2 z2 glede na ox1 y1 z1. Vektor p lahko določimo
glede na vse tri koordinatne sisteme kot p0, p1 in p2. Posamezne preslikave dobimo z enačbami
p R p0 0
1
1 En. 8.33
p R p0 0
2
2 En. 8.34
p R p1 1
2
2 En. 8.35
Če v enačbo 8.33 vstavimo 8.35 dobimo
p R R p0
1
1
2
20 En. 8.36
Robotika ¸ Stran 59
__________________________________________________________________________________
Če primerjamo enačbi 8.34 in 8.36 jasno sledi enakost
R R R0
2
0
1
1
2 En. 8.37
Enačbo 8.37 lahko razložimo tudi na sledeč način. Najprej zavrtimo koordinatni sistem ox1 y1 z1 glede
na ox0 y0 z0, kar nam podaja matrika R 0
1, nato pa ox2 y2 z2 glede na ox1 y1 z1 s transformacijo R 1
2.
Matrika R 0
2, ki je produkt obeh matrik, predstavlja transformacijo koordinatnega sistema ox2 y2 z2
glede na ox0 y0 z0.
Oglejmo si konkreten primer dveh zaporednih rotacij. Najprej za kot okoli osi y0 in nato za kot
okoli z1. Skrajšajmo zapise in namesto cos pišimo c in namesto sin s. Matrika R, ki predstavlja
zaporedje obeh transforamcij, je torej
R R Ry z
L
NMMM
O
QPPP
L
NMMM
O
QPPP
L
NMMM
O
QPPP
, ,
c s
s c
c s
s c
c c c s s
s c
s c s c c
0
0 1 0
0
0
0
0 0 1
0 En. 8.38
Sedaj zamenjamo vrstni red rotacij. Najprej torej zavrtimo za kot okoli osi z0 in nato za kot okoli
osi y1. Zaporedje teh dveh rotacij predstavimo z matriko R'
Napaka! Predmetov ne morete ustvariti z urejanjem kod polj. En. 8.39
Vrstni red rotacij in s tem tudi vrstni red množenja matrik je pomemben. Vzrok za to je dejstvo, da
rotacije, za razliko od translacij, niso vektorska količina in zato v splošnem ne komutirajo. To je
razlog za to da R R'.
8.2.3 Rotacije in translacije
Sl. 8.7, translacija koordinatnega sistema
Do sedaj smo obravnavali le rotacije koordinatnih sistemov, pri čemer se položaj izhodišča ni
spremenil. Robotski manipulator pa ima tudi translacijske sklepe in segmente s konstantno dolžino,
Robotika Stran 60
__________________________________________________________________________________
zato poglejmo, kako preračunati koordinate med sistemi, ki nimajo skupnega izhodišča. Za začetek naj
bo izhodišče koordinatnega sistema o1 x1 y1 z1 premaknjeno za vektor d0
1 glede na izhodišče o0 x0 y0 z0.
Enotni vektorji so med seboj vzporedni i i , j j k k0 1 0 1 0 1in . Vektor d0
1 povezuje izhodišče o0 z o1
(slika 8.7). Do točke P torej segata dva vektorja, p0 in p1 med njima pa velja povezava
p p d0 1 0
1 En. 8.40
kar lahko zapišemo tudi v obliki
p p d
p p d
p p d
x x x
y y y
z z z
0 1 0
1
0 1 0
1
0 1 0
1
En. 8.41
Če koordinatna sistema med seboj nista vzporedna enačbe 8.41 niso uporabne. Najbolj splošna oblika
transformacije med koordinatnima sistemoma o0 x0 y0 z0 in o1 x1 y1 z1 se lahko izrazi kot kombinacija
čiste rotacije in čiste translacije, kar lahko izrazimo z enačbo
p Rp d0 1 En. 8.42
kjer R predstavlja rotacijo in d translacijo. S krajšo matematično izpeljavo, ki jo bomo izpustili, pa
lahko dokažemo, da je mogoče zapis iz enačbe 8.42 poenostaviti tako, da rotacijo in translacijo
predstavimo z eno samo matriko
HR d
0LNMOQP1 En. 8.43
kjer 0 pomeni (0 0 0). Matrika H je dimenzije 4 4 in predstavlja homogeno transformacijo med
koordinatnimi sistemi, saj združuje rotacijsko in translacijsko transformacijo. Da bi zapisali
transformacijo iz enačbe 8.42 z množenjem z matriko, moramo vektorjema p0 in p1 dodati četrto
komponento
p'p
1 p'
p
10
0
1
1
En. 8.44
Enačbo 8.42 lahko sedaj zapišemo v matrični obliki s homogeno transformacijo
p' H p'0 0
1
1 En. 8.45
Matrike za čiste translacije imajo tako obliko
T T Tx,a y,b z,c
L
N
MMMM
O
Q
PPPP
L
N
MMMM
O
Q
PPPP
L
N
MMMM
O
Q
PPPP
1 0 0
0 1 0 0
0 0 1 0
0 0 0 1
1 0 0 0
0 1 0
0 0 1 0
0 0 0 1
1 0 0 0
0 1 0 0
0 0 1
0 0 0 1
a
b
c En. 8.46
za rotacije pa
R R Rx, y, z,
L
N
MMMM
O
Q
PPPP
L
N
MMMM
O
Q
PPPP
L
N
MMMM
O
Q
PPPP
1 0 0 0
0 0
0 0
0 0 0 1
0 0
0 1 0 0
0 0
0 0 0 1
0 0
0 0
0 0 1 0
0 0 0 1
c s
s c
c s
s c
c s
s c En. 8.47
Najbolj splošen zapis homogene transformacije pa je
Robotika ¸ Stran 61
__________________________________________________________________________________
Hn s a d
0
1
0 0 0 1
0 0 0 1
L
N
MMMM
O
Q
PPPPLNM
OQP
n s a d
n s a d
n s a d
x x x x
y y y y
z z z z
En. 8.48
V enačbi 8.48 predstavlja vektor n = (nx, ny, nz) smerne kosinuse osi o1 x1 glede koordinatne osi
sistema o0 x0 y0 z0. Podobno vektor s = (sx, sy, sz) predstavlja smerne kosinuse osi o1 y1 in a = (ax, ay, az)
smerne kosinuse osi o1 z1. Vektor d = (dx, dy, dz) označuje vektor od izhodišča o0 do o1 izraženo v
sistemu o0 x0 y0 z0. n, s in a označujejo torej orientacijo koordinatnega sistema o1 x1 y1 z1 glede na
o0 x0 y0 z0, d pa položaj izhodišča o1 glede na o0.
8.2.4 Zgledi uporabe homogenih transformacij
Kinematiko robotske roke SCARA smo enkrat že opisali, tako da smo se oprli le na geometrijo (enačbe
8.5). Takrat smo določili pozicijo vrha robotske roke glede na referenčni koordinatni sistem, nič pa
nismo povedali o njegovi orientaciji. rešimo isti problem z uporabo homogenih transformacij.
Najprej moramo poleg referenčnega določiti še ostale koordinatne sisteme. Pri izbiri smo v principu
svobodni, umestno pa je izbrati toliko koordinatnih sistemov kolikor je prostostnih stopenj. Drugo
priporočilo je, da je pri prehodu iz enega v drug koordinatni sistem natanko ena spremenljivka, ki je
lahko kot ali pomik. Ti dve priporočili sta upoštevani pri določitvi koordinatnih sistemov za robotsko
roko SCARA na sliki 8.8.
Sl. 8.8, koordinatni sistemi robotske roke SCARA
Prva homogena transformacija je le zasuk sistema o1 x1 y1 z1 glede na o0 x0 y0z0 za kot 1 okoli osi z0.
Spreminjanje kota 1 povzroča rotacijski sklep v podnožju robotske roke. Izhodišči obeh sistemov
sovpadata, zato gre v tem primeru za čisto rotacijo. Koordinatni sistem o2 x2 y2 z2 je glede na o1 x1 y1 z1
le translacijsko premaknjen za h v smeri osi z1. Premik je odvisen od translacijskega sklepa. Sistem
o3 x3 y3 z3 je glede na o2 x2 y2 z2 zasukan za kot 2 okoli osi z2 in hkrati translacijsko premaknjen v smeri
x2 in y2. Povedano lahko zapišemo s tremi homogenimi transformacijami
Robotika Stran 62
__________________________________________________________________________________
H H H0
1
1
2
2
3
L
N
MMMM
O
Q
PPPP
L
N
MMMM
O
Q
PPPP
L
N
MMMM
O
Q
PPPP
c s
s c, ,
c s a b
s c b
1 1
1 1
2 2 2
2 2 2
0 0
0 0
0 0 1 0
0 0 0 1
1 0 0 0
0 1 0 0
0 0 1
0 0 1
0
0
0 0 1 0
0 0 0 1
h
c
s
En. 8.49
Položaj in orientacijo vrha robotske roke dobimo z množenjem vseh treh matrik
H H H H0
3
0
1
1
2
2
3
1 2 1 2 1 1 2
1 2 1 2 1 1 2
0
0
0 0 1
0 0 0 1
L
N
MMMM
O
Q
PPPP
c( ) s( ) c c( )
s( ) c( ) s s( )
a b
a b
h En. 8.50
Prvi trije elementi četrtega stolpca pripadajo vektorju d (matrika 8.48) in predstavljajo pozicijo vrha
robotske roke. Pričakovano ujemanje z enačbami 8.5 je izpolnjeno. Tudi rotacijski del matrike 8.50 bi
lahko določili neposredno, saj je koordinatni sistem o3 x3 y3 z3 zavrten glede na o0 x0 y0 z0 za kot 1+2
okoli osi z0.
Iz matrike 8.48 je razvidno, da je orientacija vrha robotske roke neposredno odvisna od njegove
pozicije, naloga robotskega manipulatorja pa je, da prijemalo postavi na poljubno mesto s poljubno
orientacijo. Povedali smo že, da za to rabimo še tri prostostne stopnje, ki so združene v robotskem
zapestju. Poiščimo homogene transformacije še zanj.
Najprej moramo postaviti koordinatne sisteme. Običajno je robotsko zapestje nadaljevanje robotske
roke s tremi prostostnimi stopnjami, pri katerem izhodišče o3 koordinatnega sistema vrha (o3 x3 y3 z3)
sovpada s srednjim sklepom zapestja. Koordinatni sistemi so izbrani tako, da se vse tri osi vrtenja x3,
z4 in x5 sekajo v središču robotskega zapestja o3 (slika 8.9). Središče zapestja je na srednjem
rotacijskem sklepu in sovpada s koordinatnimi izhodišči o3, o4 in o5. Prvi rotacijski sklep vrti
koordinatni sistem o4 x4 y4 z4 okoli osi x3 za 4, translacije ni. Prva homogena transformacija H 34 je torej
čista rotacija okoli osi x (enačba 8.51). Srednji rotacijski sklep zavrti koordinatni sistem o5 x5 y5 z5
okoli osi z4 za kot 5. Tudi v tem primeru gre za čisto rotacijo. Zadnji koordinatni sistem o6 x6 y6 z6 je
postavljen na končno prijemalo, ki se zaradi tretjega rotacijskega sklepa vrti okoli osi x5, njegovo
izhodišče o6 pa je na oddaljenosti c od o5. Homogeno transformacijo sestavljata rotacija okoli x in
translacija v smeri x.
H H H34
45
56
1 0 0 0
0 0
0 0
0 0 0 1
0 0
0 0
0 0 1 0
0 0 0 1
1 0 0
0 0
0 0
0 0 0 1
4 4
4 4
5 5
5 5 6 6
6 6
c s
s c,
c -s
s c,
c s
s c
c
En. 8.51
Robotika ¸ Stran 63
__________________________________________________________________________________
Sl. 8.9, koordinatni sistemi robotskega zapestja v 'iztegnjenem' stanju
Vzemimo, da manipulator sestavljata robotsko zapestje s slike 8.9, ki je pritrjeno na vrhu robotske
roke SCARA s slike 8.8. Če želimo določiti položaj in orientacijo prijemala na koncu robotskega
zapestja glede na referenčni koordinatni sistem o0 x0 y0 z0 moramo zmnožiti vseh šest matrik
H H H H H H H06
01
12
23
34
45
56
En. 8.52
Matrika iz enačbe 8.52 je prav tako homogena transformacija, le da so zapisi posameznih členov
sorazmerno dolgi, zato zapišimo:
H0
6
f f f p
f f f p
f f f p
x
y
z
11 21 31
12 22 32
13 23 33
0 0 0 1
kjer je
f11 = c1 (c5 c2 - s5 c4 s2) -s1(s5 c4 c2 + c5 s2)
f12 = s1 (c6 s5 s2 - c2 (c6 c5 c4 - s6 s4)) - c1 (c6 s5 c2 + s2(c6 c5
c4 -s6 s4))
f13 = c1 (s6 s5 c2 + s2 (s6 c5 c4+c6 s4))+s1(c2(s6 c5 c4 + c6 s4)-s
6 s5s2)
f21 = c1 (s5 c4 c2 + c5 s2) + s1(c5 c2-s5 c4 s2)
f22 = c1 (c2 (c6 c5 c4 - s6 s4) - c6 s5 s2) - s1(c6 s5 c2 + s2 (c6 c5
c4-s6 s4))
f23 = c1 (s6 s5 s2 - c2 (s6 c5 c4 + c6 s4)) + s1(s6 s5 c2 + s2 (s6 c5
c4 + c6 s4))
f31 = s5 s4
f32 = s6 c4 + c6 c5 s(f4)
f33 = c6 c4 - s6 c5 s4
px = c1(c2(c c5 + b) - c s5 c4 s2 + a) - s1 (c s5 c4 c2 + s2 (c c5 + b))
py = c1(c s5 c4 c2 + s2 (c c5 + b))+s1 (c2 (c c5 + b) - c s5 c4 s2 + a)
pz = c s5 s4+ h En. 8.53
8.2.5 Reševanje inverznega problema s homogenimi transformacijami
Enačbe 8.53 predstavljajo rešitev direktne kinematične naloge, saj nam na osnovi znanih kotov 1, 2,
4, 5, 6 pomika h in razdalj a, b, c omogoča izračun položaja in orientacije prijemala glede na
referenčni koordinatni sistem. Ostane nam še opis postopka za reševanje inverzne naloge, kjer vemo
želeno pozicijo d in orientacijo n, s, a prijemala in moramo določiti kote in pomike v sklepih. To je v
splošnem precej bolj zapleteno kot rešitev direktne naloge.
Inverzno nalogo robotskega manipulatorja s šestimi prostostnimi stopnjami lahko zapišemo v obliki
enačbe
Robotika Stran 64
__________________________________________________________________________________
n s a d
n s a d
n s a dq q q q q q
x x x x
y y y y
z z z z
0 0 0 1
1 2 3 4 5 6
H H H H H H0
1
1
2
2
3
3
4
4
5
5
6( ( ( ( ( () ) ) ) ) ) En. 8.54
V enačbi 8.54 pomenijo q1,...,q6 notranje spremenljivke robotskega manipulatorja, medtem ko
elementi matrike na levi strani predstavljajo pozicijo in orientacijo vrha robota. V robotskih nalogah
največkrat za želeno pozicijo in orientacijo iščemo ustrezne vrednosti notranjih koordinat, torej kote in
pomike v sklepih. To pomeni, da poznamo elemente matrike na levi strani enačbe 8.54 in iščemo
spremenljivke q1,...,q6 na desni strani. Problem je seveda težji in dostikrat ni enolieno rešljiv, kar smo
pokazali že z geometrijskim reševanjem inverzne naloge za robotsko roko SCARA (stran 54) in
členasto robotsko roko (stran 56). Če zmnožimo matrike na desni strani enačbe 8.54 dobimo
654321
332313
322212
312111
,,,,, ,
1000
)()()()(
)()()()(
)()()()(
1000
qqqqqqpfff
pfff
pfff
dasn
dasn
dasn
z
y
x
zzzz
yyyy
xxxx
qqqqq
qqqq
qqqq
En. 8.55
kar vodi do naslednjega sistema enačb
n f s f a f d p
n f s f a f d p
n f s f a f d p
x x x x x
y y y y y
z z z z z
11 21 31
12 22 32
13 23 33
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
q q q q
q q q q
q q q q
En. 8.56
Sistem dvanajstih enačb je ob znanih vrednostih za n, s, a in d in neznanih notranjih spremenljivkah
robotskega manipulatorja q = q1,...,q6 težko rešljiv. V splošnem je inverzna naloga lahko nerešljiva,
ima več rešitev ali ima rešitev (rešitve), ki zaradi tehničnih razlogov niso izvedljive. Slednje je
najpogosteje posledica gibljivosti sklepov, ki ne omogočajo zasuka za vseh 3600 ali poljubnega
pomika. Na primeru robotske roke SCARA s sferičnim zapestjem vidimo, da so izrazi za f11,...,f33 ter px,
py in pz obsežni (enačbe 8.53) in nelinearni. Numerični postopki reševanja enačb so dostikrat
prepočasni, zato moramo priti do eksplicitne rešitve inverzne naloge. Primer nujnosti eksplicitnega
reševanja je varjenje, kjer robot na osnovi umetnega vida sledi začrtani krivulji in je potrebno določiti
pozicijo in orientacijo vsakih 20 ms.
8.2.6 Ločitev inverzne naloge na rotacijski in translacijski del
Za sferično robotsko zapestje je s pravilno izbiro koordinatnih sistemov mogoče inverzno nalogo ločiti
na pozicijski del in orientacijski del. Povedano drugače, za manipulator s šestimi prostostnimi
stopnjami je mogoče posebej rešiti nalogo za pozicioniranje središča sferičnega zapestja in potem
poiskati še rešitve za želeno orientacijo prijemala.
Ločitev nalog je mogoča le če se rotacijske osi robotskega zapestja sekajo v isti točki o, ki sovpada z
izhodišči o4 in o5. Pogosto s točko o sovpada tudi izhodišče o3, kar velja tudi za primer na sliki 8.9.
Pomembno je, da spreminjanje kotov sferičnega zapestja ne vpliva na pozicijo njegovega središča o, ki
je tako funkcija le treh spremenljivk robotske roke. Za pozicijo središča zapestja moramo tako rešiti le
sistem treh enačb s tremi neznankami ali pa nalogo rešujemo z geometrijo.
Prvi korak pri ločevanju inverzne naloge na pozicijski in orientacijski del je računanje pozicije
središča robotskega zapestja. Glede na to, da nam je znana pozicija vrha robota d v matriki H06, lahko
Robotika ¸ Stran 65
__________________________________________________________________________________
izračunamo pozicijo središča robotskega zapestja o, do katerega iz osnovnega koordinatnega sistema
o0 x0 y0 z0 vodi vektor p:
p
p
p
d cn
d cn
d cn
x
y
z
x x
y y
z z
En. 8.57
V enačbi 8.57 je c razdalja od vrha robota do središča zapestja, nx, ny in nz pa so smerni koeficienti osi
x6 glede na osnovni koordinatni sistem. Ko poznamo pozicijo središča zapestja moramo izračunati tri
notranje spremenljivke robotske roke q1, q2 in q3. Izkaže se, da se v ta namen najbolje izkaže
geometrijski prijem, saj smo na ta način za vse arhitekture robotskih rok sorazmerno enostavno prišli
do enačb za reševanje inverzne naloge. Ko so q1, q2 in q3 poznane lahko izračunamo R 0
3, ki predstavlja
rotacijski del matrike H0
3 (enačba 8.50). Sedaj lahko iz enačbe
R R R0
6
0
3
3
6 En. 8.58
izrazimo orientacijo orodja relativno glede na koordinatni sistem vrha robota o3 x3 y3 z3
R R R R R3
6
0
31
0
6
0
3T
0
6
En. 8.59
Iz znanih vrednosti elementov uij matrike R 3
6 moramo slednjič določiti še preostale tri notranje
spremenljivke robotskega mehanizma, ki vse pripadajo zapestju. V primeru sferičnega robotskega
zapestja s slike 8.9 moramo zmnožiti rotacijske dele matrik iz enačbe 8.51, kar
pripelje do enačbe:
c -c s s s
s c c c c - s s -s c c - c s
s s s c + c c s c c - s c s
5 6 5 6 5
5 4 6 5 4 6 4 6 5 4 6 4
5 4 6 4 6 5 4 6 4 6 5 4
u u u
u u u
u u u
11 12 13
21 22 23
31 32 33
En. 8.60
Velja c5 = u11, ker pa imajo obratne trigonometrične funkcije na intervalu od - do dve rešitvi
zapišemo raje:
5 21
arccos u En. 8.61
Ko možni rešitvi za kot 5 imamo, na podoben način izračunamo preostala dva kota iz enačb
cossin
cossin
611
5
421
5
u u
in En. 8.62
8.2.7 Zgled reševanja inverzne naloge
Oglejmo si opisani način reševanja inverzne naloge na primeru robotske roke SCARA (slika
8.8), ki je opremljena s sferičnim robotskim zapestjem (slika 8.9). Najprej podajmo konstantne
parametre tako nastalega robotskega manipulatorja (slika 8.10).
Robotika Stran 66
__________________________________________________________________________________
a = 1.5 m (razdalja od premice navpičnega gibanja do drugega rotacijskega sklepa
b = 1.0 m (razdalja od drugega rotacijskega sklepa do središča zapestja)
c = 0.2 m (razdalja od središča zapestja do prijemala)
Sl. 8.10, predstavitev inverzne naloge za robotsko roko SCARA s sferičnim zapestjem
Naj bo naloga robotskega mehanizma namestitev prijemala v smeri normale na poševno
ravnino. Začetne notranje spremenljivke manipulatorja x'6 y'6 z'6 ne ustrezajo tej zahtevi, zato
moramo poiskati ustrezne notranje spremenljivke robotskega manipulatorja, ki bodo
rezultirale v ustreznem koordinatnem sistemu prijemala. Za rešitev inverzne naloge moramo
poznati orientacijo koordinatnega sistema prijemala (x6 y6 z6) in pozicijo njegovega izhodišča
o6 glede na osnovni koordinatni sistem (x0 y0 z0). Za razmere na sliki 8.10 velja, da orientacijo
koordinatnega sistema prijemala dobimo po zaporedju treh rotacij:
R R R R0
6
z, 45 y, 30 z,1800 0 0
6
4
2
2
2
4
6
4
2
2
2
4
12
3
20
0 612 0 707 0 354
0 612 0 707 0 354
05 0 0866
. . .
. . .
. . En. 8.63
Naj bodo koordinate središča prijemala (točka o6) glede na izhodišče osnovnega
koordinatnega sistema:
dx = 0.5 m
dy = 1.0 m
dz = 1.0 m
Homogena transformacija robotskega manipulatorja je torej
Robotika ¸ Stran 67
__________________________________________________________________________________
Napaka! Predmetov ne morete ustvariti z urejanjem kod polj. En. 8.64
V tem primeru po enačbi 8.57 izračunamo pozicijo središča robotskega zapestja (točka o3 na
sliki 8.10):
p
p
p
x
y
z
0 622
0878
1100
.
.
.
En. 8.65
Z uporabo enačb geometrijskega modela robotske roke SCARA dobimo:
2 = 134.20 ali 2 = -134.20 (iz enačbe 8.8)
1 = 12.90 ali 1 = 96.40 (iz enačbe 8.9)
h = 1.1 m (iz enačbe 8.6)
Iz slike 8.10 je razvidno, da je rešitev 1 = 12.90, 2 = 134.20 ustreznejša, saj bi v drugem
primeru vrh robota dosegel želeno točko o3 z zadnje strani ravnine, kar bi v primeru fizične
ploskve pomenilo celo nesprejemljivo rešitev.
Oba kota uporabimo za izračun orientacije vrha robotske roke (rotacijski del matrike 8.50):
R 0
3
0840 0543 0
0543 0840 0
0 0 1
. .
. . En. 8.66
V naslednjem koraku izračunamo orientacijo prijemala glede na koordinatni sistem vrha
robota po enačbi 8.59:
Napaka! Predmetov ne morete ustvariti z urejanjem kod polj. En. 8.67
Upoštevajoč enačbo 8.60 dobimo
c -c s s s
s c c c c - s s -s c c - c s
s s s c + c c s c c - s c s
5 6 5 6 5
5 4 6 5 4 6 4 6 5 4 6 4
5 4 6 4 6 5 4 6 4 6 5 4
0847 0 210 0 489
0182 0 977 0105
05 0 0866
. . .
. . .
. . En. 8.68
Slednjič po enačbah 8.61 in 8.62 izračunamo preostale tri notranje spremenljivke robotskega
manipulatorja, ki pripadajo robotskemu zapestju. Rešitev tudi v primeru zapestja ni enolična, vendar
skupaj z notranjimi spremenljivkami robotske roke zapišimo le eno od možnih:
1 = 12.90 4 = 109.70
2 = 134.20 5 = 32.10
h = 1.1 m 6 = 113.20
Račun je bil sorazmerno dolg zato bi veljalo rezultate preskusiti. V ta namen notranje spremenljivke
robotskega manipulatorja vstavimo v matriko 8.53, ki predstavlja rešitev direktne kinematične naloge.
Dobimo rezultat (matrika 8.69), ki se ujema z matriko, ki jo smo jo podali na začetku (matrika 8.64).
Razlike, ki so največ 2%, so posledica zaokroževanj vmesnih rezultatov.
Robotika Stran 68
__________________________________________________________________________________
H0
6
0 610 0 712 0 354 0 502
0 615 0 702 0 359 1004
0 499 0 005 0 867 1000
0 0 0 1
. . . .
. . . .
. . . . En. 8.69
Ilustrirali smo postopek reševanja inverzne naloge, ki za želeno pozicijo in orientacijo končnega
prijemala izračuna medsebojno lego posameznih segmentov robotskega manipulatorja. Izhajajoč iz
želenih kotov ali pomikov v sklepih robota računalnik krmili delovanje elektromotorjev. Pri natančnih
opravilih robota nastanejo dodatne težave zaradi sil in navorov, ki so potrebni pri gibanju posameznih
segmentov robotskega manipulatorja. V nadaljevanju se bomo zato posvetili krmiljenju robota in samo
površno ilustrirali dinamični model krmiljenja robota.
Robotika Stran 69
________________________________________________________________________________
9 Krmiljenje robotskega mehanizma
Osnovna naloga krmiljenja robotskega mehanizma je zagotoviti ustrezno spreminjanje kotov in
pomikov v sklepih, da bi končni izvajalnik (prijemalo, orodje ...) v določenem času opravil zadano
nalogo. Neposredno vplivamo na stanje sklepov s silami in navori, posredno pa najpogosteje z
električno napetostjo krmilimo delovanje elektromotorjev.
V robotiki se uporablja različne principe krmiljenja in krmilne sheme. Način krmiljenja je odvisen od
arhitekture robotskega mehanizma in naloge, ki jo opravlja. Različen pristop je potreben glede na to ali
gibanje prijemala zvezno sledi izbrani poti ali se robotski mehanizem giblje le od ene pozicije in
orientacije prijemala do druge. Natančneje bomo obravnavali le krmiljenje posameznega sklepa.
Pokazali bomo, da so optimalni pogoji krmiljenja izbranega sklepa odvisni od medsebojne lege
preostalih segmentov robota. Ker pa se pri opravljanju zadane naloge ponavadi hkrati premikajo vsi
segmenti robota pride do dodatnih medsebojnih vplivov v obliki sil in navorov v sklepih. Za optimalno
krmiljenje moramo dobro poznati dinamiko robotskega mehanizma, ustrezne krmilne sheme pa so
precej zapletene. Na koncu poglavja bomo zato le nakazali problematiko dinamičnega krmiljenja
robota.
9.1 Nezvezno krmiljenje posameznega sklepa
Sl. 9.1 Mehanski model za krmiljenje posameznega sklepa
Izberimo kot model preprost mehanizem z eno samo rotacijo okoli navpične osi (slika 9.1). Vzemimo,
da imamo v osi rotacije nameščen analogni potenciometer tako, da je mesto drsnega priključka
odvisno kota . Z merjenjem napetosti UIn med drsnikom in enem od robnih priključkov lahko
izračunamo trenutni zasuk:
U
U
In
0
En. 9.1
Nezvezno krmilimo motor, ki spreminja kot v sklepu, z vklopom, izklopom in zamenjavo smeri
vrtenja. Za tako krmiljenje zadošča vezje z dvema relejema, katerih stanje stikal je odvisno od logičnih
stanj dveh bitov digitalnega izhoda (sliki 2.9 in 2.10). Algoritem računalniškega programa za to
krmiljene je preprost. Najprej preko analognega vhoda izmerimo trenutno napetost na potenciometru
UIn. Iz nje izračunamo trenuten kot in ugotovimo, ali je želeni kot večji ali manjši od dejanskega. Na
digitalni izhod pošljemo ustrezen podatek, ki povzroči vrtenje motorja tako, da zmanjšuje razliko med
želenim in dejanskim kotom . Po zagonu motorja merimo napetost na potenciometru in ustavimo
motor takoj, ko dejanski kot doseže želenega. Ko se motor zanesljivo ustavi izmerimo končni kot. Če
Stran 70 Robotika
____________________________________________________________________________
je začetni kot manjši od želenega je končni kot večji in obratno. Motor ne more ustaviti v hipu ampak
se zaradi vztrajnosti vrti še potem, ko ga že izključimo. Posledica tega je odstopanje med želenim in
doseženim kotom v sklepu.
Zanimivo je slediti časovnemu spreminjanju kota od zagona motorja do njegove ustavitve, ugotoviti
končno razliko med želenim in dejanskim kotom in raziskati, od česa je le ta odvisna. Naj bo začetni
kot 0° in končni 150°. Naredimo najprej dve meritvi pri katerih bo prestavno razmerje med vrtenjem
motorja in vrtenjem sklepa različno vztrajnostni moment pa enak. Pri velikem prestavnem razmerju je
vrtenje počasno in napaka je zelo majhna (krivulja c na sliki 9.2), medtem ko je pri majhnem
prestavnem razmerju kotna hitrost velika in je zaradi večje vrtilne količine sistema vztrajnost večja in
napaka znatna (krivulja a na sliki 9.2). Podobno lahko ugotovimo vpliv vztrajnostnega momenta na
napako. Pri majhnem prestavnem razmerju namestimo uteži na veliki oddaljenosti od osi vrtenja da
tako povečamo vztrajnostni moment. Ugotovimo, da je pri enaki hitrosti napaka večja (krivulja b na
sliki 9.2).
Sl. 9.2, graf spreminjanja kota pri različnih vztrajnostnih momentih in prestavnih razmerjih
Naredimo poenostavljen fizikalni model, ki bo pojasnil naše ugotovitve. Predpostavimo, da je v
trenutku ustavitve motorja (t=0) kot enak želenemu 0 in ima sistem trenutno kotno hitrost
0 00
d
dt t
Od tega trenutka naprej deluje zaradi trenja konstanten zaviralni navor, katerega posledica je
enakomerno pojemalno gibanje, ki ga opišemo z enačbo
0 0
2
2t t En. 9.2
kjer je kotni pojemek in t čas ustavljanja. Kotna hitrost se enakomerno zmanjšuje:
0 t . En. 9.3
Vrtenje se ustavi v trenutki t', ko je
Robotika Stran 71
________________________________________________________________________________
tM
J
0 ; En. 9.4
ki ga vstavimo v enačbo 9.2 , v kateri tudi nadomestimo kotni pospešek s kvocientom med navorm in
vztrajnostnim momentom. Tako dobimo kot, pri katerem se vrtenje ustavi:
' 00
2
2
J
M En. 9.5
Napako predstavlja člen 0
2
2
J
M, ki je velika pri veliki kotni hitrosti na začetku ustavljanja motorja, in
pri velikem vztrajnostnem momentu, manjša pa je, če je večji zaviralni navor. Prestavno razmerje 1: N
med vrtenjem motorja in krmiljenim sklepom N krat zmanjša kotno hitrost in N krat poveča navor kar
ima za posledico N3 krat manjšo napako.
V opisanem modelu ustavljanja robotskega mehanizma po trenutnem izklopu elektromotorja je precej
pomembnih poenostavitev. Ko izključimo enosmerni elektromotor je trenje rotorja in v oseh zobnikov
zelo majhno in bi bil kot ustavljanja zelo velik, pri sklepih z vodoravno osjo pa bi bil navor zaradi sile
teže robotskih segmentov sigurno večji od navora trenja in posamezni segmenti robotskega
mehanizma nikakor ne bi obdržali želene pozicije. Težavo je mogoče odpraviti s prestavnim
mehanizmom, ki poleg zobnikov vsebuje tudi polžast prenos. Znano je namreč, da se navor prenaša le
iz polža na zobnik, v obratni smeri pa ne. Trenutna izključitev elektromotorja torej povzroči ustavitev
vrtenja polža, vztrajnost mehanizma pa povzroči delovanje sile vzporedno z njegovo osjo, ne more pa
ga zavrteti. Velik vztrajnostni moment in velika kotna hitrost v trenutku ustavljanja torej lahko
povzroči mehansko poškodbo prenosnega mehanizma, predvsem na prenosu s polža na zobnik. Iz
krivulje b na sliki 9.2 je razvidno, da je ustavitev motorja povzročila dušeno nihanje, saj konstrukcija
ni popolnoma toga, prenos med polžem in zobnikom pa ni dovoljeval večjega kota zaviranja. Tako je
odstopanje dejanskega kota od želenega bolj posledica mrtvih hodov v prenosnem mehanizmu kot
samega ustavljanja rotorja.
Digitalno krmiljenje postane torej nezanesljivo, če potrebujemo hitro gibanje robotskih segmentov in
imamo opraviti z velikimi vztrajnostnimi momenti. V tem primeru moramo torej poseči po nekoliko
bolj zapletenih krmiljih.
9.2 Zvezno krmiljenje posameznega sklepa
Osnovna ideja zveznega krmiljenja kota v sklepu je postopno (zvezno) ustavljanje motorja bolj ko je
dejanski kot podoben želenemu. Tak način krmiljenja omogoča velike hitrosti gibanja tudi pri
prenašanju večjih bremen in zaradi postopnega ustavljanja, obvaruje robotski mehanizem pred
poškodbami in omogoča večjo natančnost pozicioniranja vrha robotske roke.
9.2.1 Idealizirana obravnava PD in PID krmiljenja
Najpreprostejšo krmilno shemo ima proporcinalni in diferencialni člen, ki mu na kratko rečemo PD
regulator. Navor M je sorazmeren razliki med dejanskim kotom in želenim kotom 0, sorazmerje
proporcionalnega člena podaja konstanta KP. Krmilje sestavljeno samo s proporcionalnega člena bi
povzročilo neprestano nihanje okoli želenega kota. Oscilacije zadušimo z negativnim diferencialnim
členom s konstanto KD. Navor mora zato ustrezati enačbi
DP KKM 0 En. 9.6
V enačbi upoštevamo II. Newtonov zakon za vrtenje M J J , in dobimo
J K K KD P P
t t
( ) ( )
0
0 00 0, En. 9.7
Stran 72 Robotika
____________________________________________________________________________
Robni pogoji za enačbo 9.7 so izbrani za primer, ko je kot v sklepu na začetku izvajanja PD regulacije
nič in sistem miruje. Enačbo poznamo iz fizike, saj gre za diferencialno enačbo dušenega nihanja.
Rešitev je več, odvisno od vrednosti konstant. Pri dovolj majhnem dušenju je rešitev enačbe 9.7
K
J
K
J
K
JJ
K
P Dt
P
D
t t
2
2
0
0
2 20
2 12
1d i e jb g
e
: ( ) cos( ' )
, , '
En. 9.8
Enačba 9.8 je rešitev pri podkritičnem dušenju. Kadar je vrednost konstant taka, da bi v izrazu za '
dobili negativen rezultat govorimo o nadkritičnem dušenju. Rešitev enačbe 9.7 je v tem primeru precej
zapletena, poenostavimo pa jo lahko za primer zelo velikega dušenja, ko se dejanski kot eksponentno
približuje želenemu
e1)( : 0
2
2
P
D
t
DP
K
K
J
K
J
Kt
En. 9.9
V mejnem primeru govorimo o kritičnem dušenju
K
J
K
Jt
JK P
K
J
P Dt
D
D
t
K
2
2
0
24
1 1
2
d i b ge j : e
,
( ) En. 9.10
Kritično dušenje predstavlja optimalne pogoje za PD regulacijo, saj se kot v sklepu v najkrajšem času
približa želenemu kotu (slika 9.3). Iz enačbe 9.10 razberemo, da je čas tem krajši, čim večji je KD,
kar pa pogojuje še večjo konstanto proporcinalnega člena KP. V praksi konstanti ne moreta biti
poljubno veliki, saj moramo upoštevati končne zmogljivosti motorja in nasičenje elektronskih sklopov
proporcionalnega in diferencialnega člena. Poleg tega je pri krmiljenju vseh sklepov robotskega
mehanizma treba upoštevati, da se običajno hkrati gibljejo vsi segmenti in se zato med eno in drugo
lego robotskega prijemala spreminja vztrajnostni moment, zanemarili pa smo tudi dodatne sile in
navore, do katerih pri tem pride.
Sl. 9.3 Časovno približevanje dejanskega kota želenemu pri: a) podkritičnem, b) kritičnem in c) nadkritičnem dušenju
Opisani model PD regulacije posameznega sklepa ne upošteva vseh vplivov. Povsem smo zanemarili
trenje v sklepu, ki je lahko kar znatno. Posledica trenja je nasprotni navor navoru rotorja, zato se
mehanizem ustavi še preden je napetost na motorju nič torej v položaju, ko kot v sklepu ni enak
želenemu. Tej napaki v regulacijski tehniki pravijo statična napaka. Dodatne težave povzročajo mrtvi
hodi v prenosu med zobniki ter polžem in zobnikom. Odpravimo jo tako, da dodamo integralni člen, to
je vezje, ki integrira razliko med želenim in dejanskim kotom. Tak regulator označujejo s kratico PID.
Navor v sklepu robota mora slediti enačbi
M K K dt KP I D z 0 0b g b g En. 9.11
Robotika Stran 73
________________________________________________________________________________
ki jo lahko predstavimo tudi z blokovno shemo (slika 9.4).
Sl. 9.4, blokovna shema PID krmiljenja kota v sklepu robota -(servosistem)
V enačbi 9.11 nastopajo trije koeficienti, od katerih ima vsak lahko tudi vrednost nič. Če je nič KI gre
za PD regulacijo, za katero smo naredili idealiziran matematični model na začetku poglavja.
9.2.1 Eksperimentalni rezultati s PD in PID krmiljenjem
Oglejmo si praktično izvedbo na primeru krmiljenja posameznega rotacijskega sklepa, kjer za pogon
uporabimo enosmerni motor s trajnim magnetom. Motor sestavljata nepremični stator in vrteči se
rotor, ki je znotraj statorja. Del statorja je trajni magnet, ki je vir konstantnega magnetnega polja. Na
rotorju je navitje, skozi katerega teče električni tok Im. Vodniki navitja so pravokotni na magnetno
polje zato na rotor deluje magnetni navor, ki je sorazmeren z električnim tokom, gostoto magnetnega
polja B, odvisen pa je tudi od geometrije navitja. Za nas je pomembno, da je navor motorja sorazmeren
z električnim tokom skozi navitje rotorja
M c Im m m En. 9.12
kjer cm predstavlja konstanto navora motorja. Iz fizike je znano, da gibajoč vodnik v prečnem
magnetnem polju povzroči inducirano napetost, ki je sorazmerna magnetnemu polju in hitrosti gibanja.
V skladu z Lentzovim pravilom inducirana napetost zavira električni tok Im. Inducirano napetost je v
našem primeru sorazmerna s kotno hitrostjo vrtenja rotorja
U c ci i i
d
dt
En. 9.13
Kadar navor motorja krmilimo z napetostnim virom z izhodno napetostjo Um(t) moramo rešiti
diferencialno enačbo za električni tok
L RI U t UdI
dt m m im ( ) En. 9.14
Glede na to, da je Ui odvisna od kotne hitrosti rotorja, ki se pri PD regulaciji prav tako spreminja s
časom, je reševanje diferencialne enačbe v primeru napetostnega krmiljenja precej zapleteno.
Nekoliko laže je, če zanemarimo prvi člen v enačbi 9.14. V tem primeru torej lahko zapišemo
U t c RM
cm i
m
m
( ) En. 9.15
Ker je motor priključen na izvor napetosti Um za napetostno PID krmiljenje zapišimo podobno enačbo
kot smo jo za PID krmiljenje z navorom (enačba 9.11)
Stran 74 Robotika
____________________________________________________________________________
DIPm KdtKKtU 00)( En. 9.16
Slednjo vstavimo v enačbo 9.15, dobljeno enačbo preuredimo in za navor motorja z napetostnim PID
krmiljenjem dobimo
iDIP
m
m cKdtKKR
cM 00
En. 9.17
Vidimo, da se enačbi 9.11 in 9.17 razlikujeta le v zapisu konstant. Pomembno je, da nova konstanta
diferencialnega člena ne more biti nič, tudi če je KD nič. Spomnimo se, da je koeficient ci posledica
dejstva, da se na vrtečem rotorju inducira napetost, ki zavira gibanje. Izključno proporcionalno
krmiljenje z napetostnim virom torej ni mogoče.
Enačba 9.17 je osnova za izračun navora M glede na os vrtenja našega modela. Ker smo privzeli, da je
os navpična, nam ni treba upoštevati navora zaradi sile teže. Upoštevati moramo le prestavno razmerje
N med rotorjem motorja in osjo vrtenja ter nasprotni navor M tr zaradi trenja v oseh, med zobniki itd
M NM Mm tr En. 9.18
Uporabimo II. Newtonov zakon za vrtenje M J , združimo zadnji dve enačbi in dobimo
triDIP
m McKdtKKR
NcJ
00 En. 9.19
Enačbe ne bomo reševali saj je sorazmerno zapletena in poleg tega ne upošteva prav vseh vplivov na
obnašanje našega modela. Predvsem gre tu za mrtvi hod, ki je posledica prenosa (zobniki, polži) in
netogost mehanske konstrukcije.
Namesto reševanja enačbe si oglejmo rezultate eksperimenta s PID napetostnim krmiljenjem
posameznega sklepa (slika 9.1). V ta namen moramo najprej sestaviti električno vezje, ki bo zadostilo
pogojem PID krmiljenja zapisanega v enačbi 9.16. V enačbi nastopata kota in 0, ki sta neelektrični
količini, zato ju podobno kot pri nezveznem krmiljenju pretvorimo v električno napetost z linearnim
potenciometrom. Zvezo med kotom in izhodno napetostjo potenciometra podaja enačba
UUc
cU1 En. 9.20
Z upoštevanjem te zveze dobi enačba 9.16 obliko
UKdtUUKUUKctU DIPm 001)( En. 9.21
Kjer je U0 napetost v potenciometru pri želenem kotu 0.
Zapisano prenosno funkcijo za električno napetost motorja torej uresničimo s krmilnim vezjem, ki
vsebuje diferencialni ojačevalnik, vezje za odvajanje, inverter, vezje za integriranje, seštevalnik in
ojačevalnik moči. Vse skupaj je mogoče strniti v krmilno shemo s petimi operacijskimi ojačevalniki
(slika 9.5).
Robotika Stran 75
________________________________________________________________________________
n U UO1
U n U Un
R CU U dt R C Um O O 1
1
1 1
2 2
n U UO1
n
R CU U dtO
1
1 1
n U Un
R CU U dt R C UO O1
1
1 1
2 2
Sl. 9.5, električno vezje za PID krmiljenje motorja (servosistem)
V sklopu prvega operacijskega ojačevalnika (o.o.1) je diferencialni ojačevalnik z ojačenjem n1. Na
njegovem vhodu sta napetost iz analognega izhoda UO, ki določa želeni kot in napetost s
potenciometra U, ki predstavlja dejanski kot v sklepu. Naslednja stopnja v vezju PID krmilja je
inverter (o.o.2), ki mu sledi integrator (o.o.3). Četrti operacijski ojačevalnik tvori seštevalnik razlike
obeh napetosti na vhodu diferencialnega ojačevalnika, integrala razlike obeh napetosti in odvoda
napetosti s potenciometra. Zadnji sklop krmilja je ojačevalnik moči z napetostnim ojačenjem 1.
Vrtenje motorja spreminja kot v sklepu in s tem napetost na potenciometru. Za računalniško
krmiljenje kota torej zadošča analogni izhod. Kljub temu je koristno napetost na potenciometru voditi
na analogni vhod saj s tem dobimo stalno preverjamo dejanski kot v sklepu in s tem natančnost
krmiljenja.
Če primerjamo zapis napetosti na motorju
UCRdtUUCR
nUUnU OOm
22
11
1
1 En. 9.22
s pogojem za napetostno PID krmiljenje (enačba 9.21) ugotovimo, da konstanto proporcionalnega
člena KP določa ojačenje diferencialnega ojačevalnika n1, konstanto integralnega člena KI določa
produkt R1C1 in KD diferencialnega člena produkt R2C2.
Stran 76 Robotika
____________________________________________________________________________
Vezje PID krmilja na sliki 9.5 zlahka priredimo v PD krmilje. R1C1 mora biti neskončen, da je
konstanta integralnega člena nič. Naj bo zaradi enostavnosti R2C2 nič. To pa ne pomeni, da je tudi
diferencialni člen nič, saj je dušenje posledica inducirane napetosti na rotorju elektromotorja (enačba
9.13). Tudi če ima vezje le proporcianalni člen gre torej kljub temu za PD krmiljenje. Poskusimo z
eksperimentom ugotoviti najprimernejše vrednosti konstant za PD in PID krmiljenje za mehanski
model brez dodatne obtežitve vrtečega se vodoravnega nosilca (majhen vztrajnostni moment J), potem
pa na oba konca vodoravnega nosilca dodamo uteži (velik J) in preverimo lastnosti krmilja pri enakih
vrednostih obeh konstant.
Rezultate eksperimentov kažejo grafi kota v odvisnosti od časa na sliki 9.6. Začetni kot krivulj a, b in
c je 0°, končni 150° medtem ko je za krivulji d in e začetni kot 50° in končni 200°. Pogoji za
posamezne krivulje so bili sledeči:
krivulja a krmilje PD: n1 = 5 majhen J
krivulja b krmilje PD: n1 = 15 majhen J
krivulja c krmilje PD: n1 = 15 velik J
krivulja d krmilje PID: n1 = 30, R1C1= 0.33 s, R2C2 = 4.7 s majhen J
krivulja e krmilje PID: n1 = 30, R1C1= 0.33 s, R2C2 = 4.7 s velik J
Sl. 9.6, eksperimentalni rezultati za PD in PID krmilje mehanskega modela z eno
prostostno stopnjo
Rezultati pri PD krmiljenju so zelo odvisni od ojačenja n1. Posledica premajhnega ojačenja je velika
statična napaka, saj se motor ustavi precej preden je na njem napetost nič. Večje ojačenje skoraj
odpravi statično napako. Vezje je pri velikem odstopanju dejanskega kota od želenega v nasičenju in
motor se vrti pri največji možni napetosti. Ko je dejanski kot že zelo blizu želenega vezje ni več v
nasičenju in napetost na motorju začne postopoma padati. Preveliko ojačenje povzroči nihanje okoli
želenega kota kar se še posebno rado zgodi pri velikem vztrajnostnem momentu. Za PID krmilje velja,
Robotika Stran 77
________________________________________________________________________________
da je vpliv vztrajnostnega momenta manjši. Integralni člen onemogoča kakršno koli statično napako,
vendar pa lahko ob nepravilni izbiri konstant povzroči znatne oscilacije okoli želenega kota.
PD krmilje v določenih primerih lahko da zadovoljive rezultate, poleg tega pa je precej laže poiskati
optimalne pogoje, saj moramo ugotoviti le eno konstanto. Tudi električna shema je precej
enostavnejša (slika 9.7).
n U UO1
Sl. 9.7, poenostavljena shema servosistema
9.3 Krmiljenje robota z dinamičnim modelom
Večina industrijskih robotov je krmiljena s klasičnim servosistemom za posamezno prostostno
stopnjo. Tak način krmiljenja je primeren le za majhne hitrosti gibanja robota s sorazmerno močnimi
motorji. Če želimo doseči večje hitrosti gibanja se moramo soočiti z vrsto težavami:
Ker se sočasno giblje več segmentov robotskega manipulatorja, pride do spreminjanja
vztrajnostnih momentov v razmerju 1: 3 ko robotski manipulator ni obremenjen in celo v razmerju 1: 9
pri polni obremenitvi. Vpliv vztrajnostnega momenta na optimalnost pogojev servosistema smo
pojasnili v prejšnjih dveh poglavjih.
Vztrajnosti posameznih segmentov imajo medsebojen vpliv. Na primeru antropomorfne
(členaste) robotske roke (slika 8.4) to pomeni, da gibanje zadnjega segmenta (b) ne vpliva le na sklep,
kamor je segment pripet, ampak čuti dodaten navor tudi sklep, ki vrti segment c. S PID krmiljenjem
vsake prostostne stopnje posebej ne moremo upoštevati vzajemnih vplivov.
Pojavijo se Coriolisovi pospeški, ki so posledica ohranjanja vrtilne količine ob spreminjanju
vztrajnostnega momenta. Znan zgled za to je drsalec, ki ob izvajanju piruete s krčenjem rok ob telo
poveča frekvenco vrtenja. Poleg Coriolisovih nastopajo bolj znani centripetalni pospeški, oboji pa
močno vplivajo na pogoje krmiljenja.
Pri velikih hitrostih gibanja robota je treba upoštevati naštete vplive, to pa je mogoče le z
upoštevanjem dinamike robotskega manipulatorja. Podobno kot pri kinematiki imamo tudi pri
dinamiki direktno in inverzno nalogo. O direktni nalogi govorimo, kadar na osnovi znanih navorov in
sil izračunamo trajektorijo sklepov in s tem vrha manipulatorja. Bolj pogosto moramo reševati
inverzno nalogo, pri kateri za določeno trajektorijo računamo potrebne sile in navore.
Dinamična analiza gibanja robotskega manipulatorja in s tem povezano krmiljenje z dinamičnim
modelom sta sorazmerno obsežni temi in ju ne bomo podrobneje obravnavali.
Stran 78 Robotika
____________________________________________________________________________
10 Merilniki v robotiki
Roboti v industriji opravljajo vse več nalog, zaradi katerih potrebujejo čim boljše povratne informacije
o svojem lastnem stanju in stanju njihove okolice. To je posebno pomembno pri montažnih nalogah in
v primeru, ko roboti strežejo strojem in je od dogajanja v okolici odvisna uspešnost opravil. Da bi
povečali njihovo prilagodljivost jih moramo opremiti s tipali, podatke, ki jih dobimo s tipal pa
vključiti v krmilne algoritme kar skupaj z elementi umetne inteligence omogoča precejšno stopnjo
samostojnosti robota. Večina sedanjih industrijskih robotov je opremljena le s tipali položaja sklepov
robotskega manipulatorja. Ta tipala so osnova za določanje lastnega stanja in za delovanje krmilnih
sistemov. Zaradi že omenjenih razlogov pa robote opremljajo tudi s tipali za sile in navore ter dotik.
Ultrazvočna tipla in sistemi umetnega vida so namenjena robotskemu zaznavanju širše okolice.
10.1 Tipala položaja robotskega manipulatorja
Tipala za položaj igrajo pomembno vlogo pri krmiljenju robotskega manipulatorja. S tem smo se že
seznanili pri obravnavi servosistema, kjer smo za določanje kota uporabili linearni potenciometer. Ker
ima le ta za praktično uporabo v robotiki precej slabosti se v praksi pogosteje uporablja resolver in
digitalni kotni odjemnik.
10.1.1 Resolver
Resolver spada med elektromehanične merilne pretvornike zasuka v električno napetost. To je
rotacijski transformator, pri katerem je primarna tuljava na rotorju in sekundarni tuljavi na statorju z
osmi pod kotom 90 (slika 10.8).
U0 cos U0 sin
Sl. 10.8, poenostavljena shema resolverja
Delovanje resolverja je podobno transformatorju. Primarno tuljavo napajamo z izmenično napetostjo
Um merimo pa inducirani napetosti na sekundarnih tuljavah. Amplituda inducirane napetosti in njena
faza glede na napajalno napetost je odvisna od kota, ki ga glede na osi sekundarnih tuljav oklepa
primarna tuljava. Če bi imel resolver le eno sekundarno tuljavo bi bilo mogoče meriti kot od 0 do 180
, z merjenjem amplitude in faze na drugi tuljavi pa lahko določimo kot med 0 in 360.
Primarna tuljava ustvari homogeno magnetno polje, ki se zaradi sinusne napajalne napetosti spreminja
s časom po enačbi B B tm 0 sin , kjer je B0 amplituda magnetnega polja in krožna frekvenca. V
sekundarnih tuljavah z N ovoji in presekom S se inducira napetost
Robotika Stran 79
________________________________________________________________________________
L :
L :
1
2
Ud NB S
dtNSB t
Ud NB S
dtNSB t
mm
mm
1
2
( )cos cos
( )sin cos
b g
b g En. 10.1
Za amplitudi napetosti torej lahko zapišemo enačbi
L :
L :
1
2
U U
U U
10 0
20 0
cos
sin
En. 10.2
Z merjenjem amplitude napetosti na eni od obeh tuljav in merjenjem faznega premika obeh
induciranih napetosti glede na napajalno napetost torej dobimo dovolj podatkov za izračun kota .
Vzemimo, da smo na tuljavi L1 izmerili amplitudo napetosti 0 V. Iz tega lahko sklepamo, da je kot
lahko enak 90 ali 270. V obeh primerih je amplituda napetosti na tuljavi L2 maksimalna (U0), vendar
je pri kotu 90 fazni premik med U2 in Um enak /2, medtem ko je pri kotu 270 enak -/2.
Tipična natančnost resolverja je tri (kotne) minute vendar jo je mogoče močno povečati z namestitvijo
več parov tuljav na stator. Za n parov se ločljivost poveča n krat.
Resolver ima glede na linearni potenciometer precej boljše lastnosti. Dobro se obnese v okolju s
precejšno vlago in spremembami temperature, ni občutljiv na vibracije in morebitne mehanske
obremenitve. Z njim lahko merimo tudi kadar gre za hitre rotacije in je natančnejši od linearnega
potenciometra.
10.1.1 Digitalni kotni odjemnik
Digitalni kotni odjemnik (angl. shaft encoder) neposredno pretvori kot v digitalno obliko. Obstajajo
različni tipi vendar se najpogosteje uporabljajo optični kotni odjemniki. Poznamo dva tipa:
digitalni kotni odjemnik s prirastkom (angl. incremental shaft encoder)
kodirani digitalni kotni odjemnik (angl. coded shaft encoder)
Delovanje obeh je opisano v razdelku 12.2.
Digitalni kotni odjemniki so glede na resolver nekoliko manj zanesljivi, posebno so občutljivi na
vibracije in mehanske obremenitve. So večji, bolj občutljivi na temperaturo in vlago in neprimerni za
večje hitrosti gibanja (nad 12 Hz). Njihova natančnost je podobna resolverju in precej boljša od
linearnega potenciometra.
Iz naštetega sledi, da so za industrijske robote najprimernejši resolverji, sledijo jim digitalni kotni
odjemniki in nato linearni potenciometri.
10.1 Tipala za zaznavanje stanja okolice robotskega manipulatorja
Tipala za merjenje kotov in pomikov v sklepih so namenjeni krmiljenju robotskega manipulatorja iz
nekega začetnega stanja v neko končno stanje preko določenih vmesnih položajev. Tak način
krmiljenja ne upošteva povezanosti robota z njegovo okolico.
Nekatera opravila kot je na primer sestavljanje posameznih delov v končni izdelek terjajo tipala za sile
in navore, ki nastajajo kot posledica stika robota z okolico. V splošnem ima merilnik sile prožno
mehansko osnovo (vzmet, palico), ki se deformira pod vplivom sil in navorov. Velikost deformacije
pretvorimo v električni signal z uporabo uporovnih (merilnih) lističev, induktivnih odjemnikov
pomikov...
Za popolno določitev stika med robotom in okolico moramo meriti šest skalarnih komponent in sicer
tri za silo in tri za navor. Najpogosteje so tipala nameščena neposredno v zapestju. Obstajajo različne
konstrukcijske izvedbe, ki pa jih ne bomo obravnavali.
Stran 80 Robotika
____________________________________________________________________________
Merilniki dotika (tipa) posnemajo tip človeških prstov zato so nameščeni v robotskem prijemalu. V
principu gre dvodimenzionalno mrežo elementov tipa, od katerih vsak predstavlja merilnik dotika
(informacija je le da/ne) ali sile. Njihov osnovni namen je podati informacijo o položaju in obliki
predmeta v zapestju. Na tej osnovi naj bi bilo omogočeno razpoznavanje tipa predmeta in ugotavljanje
njegovih mehanskih lastnosti. V industrijskem okolju delovanja gre pogosto za skrajne pogoje glede
temperature, vlažnosti ali celo kemične aktivnosti. Poleg tega so sile dotika po velikosti lahko kaj
različne, zato so merilniki dotika še na stopnji laboratorijskih preizkusov.
Do težav pri klasičnem krmiljenju robota pride lahko že v primeru, ko se v delovnem prostoru pojavi
nepredvidena ovira. Da se izognemo nepredvidenim težavam bi moral biti robot sposoben zaznavati in
razpoznavati predmete v okolici kar pomeni, da mora imeti robot elemente umetnega vida.
Posebni merilni sistemi, ki temeljijo na ultrazvoku (frekvence od 20 kHz do 300 kHz), omogočajo
merjenje razdalje od robotskega prijemala do izbranega predmeta v okolici ali celo oblikovanje
tridimenzionalne slike okolice. Fizikalna osnova je merjenje časa, ki ga potrebuje ultrazvočni impulz
da prepotuje razdaljo od oddajnika do sprejemnika. Ob upoštevanju konstantne hitrosti širjenja
ultrazvoka lahko iz časa izračunamo prepotovano razdaljo. Najpogosteje sta oddajnik in sprejemnik na
samem robotu in zaznavanje okolice temelji na odboju impulzov od predmetov.
Podobno vlogo imajo tudi merilniki, katerih osnovni del je laser. Tudi v tem primeru gre za merjenje
razdalje do najbližje ovire. Z merjenjem razdalj v različnih smereh je mogoče ustvariti
tridimenzionalno sliko okolice robota.
Za zaznavanje in razpoznavanje predmetov v okolici robota intenzivno razvijajo tudi različne optične
sisteme, katerih cilje čim bolj se približati človeškemu vidu. Za uresničitev teh ciljev je potrebna
posebna osvetlitev delovnega prostora. Nastali so posebej za to razviti optični elementi z
dvodimenzionalno mrežo optičnih sprejemnikov.
Informacije, ki jih robot preko tipal dobi o stanju okolice, je potrebno primerno vrednotiti. Ustrezna
programska oprema vsebuje elemente umetne inteligence, njen cilj pa je čim bolj prilagodljivo,
samostojno in učinkovito delovanje robota v še tako neobičajnih okoliščinah. Tudi področje
zaznavanja okolice in umetnega vida so pretežno na stopnji laboratorijskih raziskav.
10.1.4 Merilna letev
Na gibljivi merilni letvi so z natančnim postopkom nanešeni prozorni in neprozorni pasovi prečno na
smer gibanja letve. Perioda nanosa d je 4 µm ali več. Na eni strani letve je mirujoč izvor svetlobe, na
drugi strani pa mirujoča letev z dvema režama na oddaljenosti d/4 in svetlobnima tipaloma. Pri gibanju
letve v pozitivni smeri (+x na sliki 10.9) izhodna napetost U2 vezja s fotoelementom 2 zaostaja za
napetostjo U1 za četrtino periode, medtem ko pri gibanju v nasprotni smeri (-x) napetost U2 prehiteva
napetost U1 za četrtino periode. Glede na princip delovanja je jasno, da z merilno letvijo merimo
relativne pomike in ne absolutne razdalje.
Robotika Stran 81
________________________________________________________________________________
Sl. 10.9, princip delovanja merilne letve
Vzemimo, da je signal U1 priključen na bit D0 in U2 na bit D1 digitalnega vhoda. Pri pozitivni smeri
gibanja si sledijo kombinacije D1D0 takole: 11, 01, 00, 10, in nato spet 11. Desetiško bi to bilo 3, 1, 0,
2, … Kadar je smer gibanja negativna imamo: 01, 11, 10, 00, oz. desetiško 1, 3, 2, 0. Vsaka
sprememba stanja torej pomeni pomik za d/4. Predznak pomika je pozitiven pri spremembah 31,
1 0, 02 in 23 ter negativen pri spremembah 13, 32, 20 in 01.
10.2.1 Digitalni kotni odjemnik s prirastom
Digitalni kotni odjemnik s prirastom (angl. incremental shaft encoder) meri zasuk glede na izbran
začetni položaj in ne absolutnega kota, kot je to mogoče s potenciometrom. Merilni pretvornik
generira impulze, ki se ponovijo vsakič, ko se zasuk poveča za kot . S štetjem impulzov je mogoče
določiti zasuk merjenca. Impulzi so lahko magnetni ali optični. Usmerjeni so na magnetno ali
svetlobno tipalo, ki jih pretvori v električno napetost. Pogostejša je svetlobna izvedba, ki je cenejša in
laže izvedljiva.
Merilni odjemnik sestavljata dve vzporedni okrogli plošči (slika 10.10). Na vrtljivi plošči so v
kolobarju prozorni in neprozorni pasovi v razmiku . Druga plošča miruje in ima vrezani dve
odprtini v razmaku /4. Na tisti strani sistema, kjer je vrtljiva plošča, je svetilo, na nasprotni strani pa
dve svetlobni tipali, ki prestrezata svetlobo, ki pride skozi reži. Zaradi vrtenja plošče je svetlobni snop
prekinjen pri zasuku za /2 in za prav takšen kot neprekinjen. Vezje, v katerega sta vezani obe tipali,
podobno kot pri merilni letvi oblikuje dve izhodni napetosti v obliki impulzov. S štetjem impulzov
izbranega tipala lahko določimo le absolutni zasuk, medtem ko smer določimo z merjenjem fazne
razlike med obema signaloma. Za razmere na sliki 10.10 velja, da pri vrtenju v smeri urinega kazalca
signal s tipala 2 fazno zaostaja za /2 glede na signal tipala 1. Podobno pri vrtenju v obratni smeri
napetostni signal 2 prehiteva signal 1 za /2.
Komercialno so na voljo različne izvedbe merilnikov. Razlikujejo se po številu impulsov na obrat
(100, 360, 500 ...). Tipala in preostala elektronika so že vgrajeni v merilnik. Nekatere izvedbe imajo
digitalna izhodna signala (TTL standard), druge generirajo sinusna izhodna signala.
Stran 82 Robotika
____________________________________________________________________________
Sl. 10.10, digitalni kotni odjemnik s prirastkom
10.2.2 Kodirani digitalni kotni pretvornik
Tudi kodirani digitalni kotni pretvornik (angl. coded shaft encoder) sestavljata dve plošči (slika 10.11).
Mirujoča plošča ima eno dolgo režo, razporeditev rež na vrteči se plošči pa je drugačna kot pri kotnem
pretvorniku s prirastom. Svetlobno prepustni in neprepustni pasovi so so razporejeni v več kolobarjih
(na sliki v štirih), temu ustrezno je tudi število tipal na strani mirujoče plošče saj imamo za vsak
kolobar eno tipalo. Najožji pasovi so na zunanjem pasu, njihova širina na vsakem naslednjem pasu pa
je dvakrat večja od predhodne. Razporeditev pasov po kolobarjih je taka, da se kombinacija signalov
vseh tipal ponovi šele po enem vrtljaju. Merilnik s štirimi pasovi razdeli polni kot na šestnajst
področij, kombinacije impulzov pa si sledijo enako kot bi šteli v dvojiškem sistemu. Izhod s prvega
področja je torej 0000, sledi mu 0001, 0010, 0011 itd.
Slabost tega sistema je v tem, da je v praksi nemogoče izdelati gibljivo ploščo tako, da bi bili prehodi
med pasovi posameznih kolobarjev popolnoma poravnani. Pri prehodu iz enega področja v drugo se
kaj lahko zgodi, da tipalo na enem kolobarju ne preklopi sočasno s tipalom drugega kolobarja. V času
med obema preklopoma je dvojiška kombinacija lahko popolnoma neustrezna. Težavo rešujejo tako,
da na zunanjem delu vrtljive plošče dodajo še en kolobar, ki ima zelo ozke pasove razporejene na
mejah med področji. Tako vemo, da je v času trajanja impulza z dodatnega tipala, branje podatka z
ostalih tipal nezanesljivo.
Robotika Stran 83
________________________________________________________________________________
Sl. 10.11, štiribitni kotni pretvornik
Ločljivost kodiranega kotnega pretvornika je neposredno odvisna od tega, koliko biten podatek
dobimo. Najpogosteje uporabljajo 12 bitne, ki imajo ločljivost 5' (360/212). Njegova slabost je v
velikem številu žic, ki vodijo do njega, prednost pa v enostavnosti uporabe.
10.2.3 Merjenje zasuka z induktivnim stikalom
Sl. 10.12, merjenje zasuka z induktivnim stikalom
Ker induktivno stikalo zazna bližino feromagnetne snovi (glej poglavje 4.3.2) ga namestimo tako, da
je njegov pol v bližini zobnika (slika 10.12). Izhodna napetst stikala se spremeni pri prehodu iz zoba
na utor in obratno, zato s štetjem impulzov lahko določimo zasuk. Če bi želeli določiti tudi smer
vrtenja, bi morali namestiti še eno indukcijsko stikalo, tako da bi bila pri vrtenju zobnika izhodna
signala obeh stikal med seboj fazno premaknjena za /2.
Zasuka se meri z indukcijskim tipalom tudi za regulacijo frekvence vrtenja elektromotorja.
Stran 84 Merilna tehnika
___________________________________________________________________________