Če bo hitrost enega kolesa večja od hitrosti drugega, npr. da se levo kolo vrti hitreje od desnega, bo robot stalno obračal in se vrtel v krogu, v našem primeru v desno stran. Veljala bo enačba (2.2).
𝑣L > 𝑣D , 𝑣D> 0 (2.2)
Teoretične osnove in pregled literature
5 Slika 2.3: Obračanje mobilnega robota v desno smer [2]
Če želimo, da se robot vrti okoli lastne osi, morata biti hitrosti koles nasprotno enaki. To dobimo v primeru, ko se desno kolo vrti z enako hitrostjo kot levo, a v nasprotni smeri.
Robot se bo vrtel v smeri urinega kazalca, kot opisujeta enačba (2.3) in slika 2.4 [2].
𝑣L= −𝑣D , 𝑣L > 0 (2.3)
Slika 2.4: Gibanje mobilnega robota okoli lastnega središča [2]
Podrobneje si lahko predstavljamo mobilni robot v koordinatnem sistemu, kot je predstavljen na sliki 2.5. Lego robota opisujejo trije parametri: x koordinata, y koordinata in zasuk robota φ. V izhodiščnem položaju dobimo x0, y0 in φ0. V končnem položaju, kjer želimo analizirati gibanje robota, pa so koordinate predstavljene kot xk, yk in φk.
Hitrost za levo kolo lahko zapišemo kot:
𝑣L= 𝑟 ∙ 𝜑̇L= 𝑟 ∙ 𝜔L , (2.4)
kjer r predstavlja radij kolesa, 𝜑̇L, oziroma ωL pa predstavljata kotno hitrost levega kolesa.
Analogno temu je hitrost desnega kolesa:
𝑣D= 𝑟 ∙ 𝜑̇D= 𝑟 ∙ 𝜔D (2.5)
Teoretične osnove in pregled literature
6
kjer 𝜑̇R, oziroma ωR predstavljata kotno hitrost levega kolesa.
Z upoštevanjem geometrijskih lastnosti in kinematike mobilnega robota ter enačb (2.4) in (2.5) izpeljemo enačbi (2.6) in (2.7):
𝑣 =𝑣D+ 𝑣L
2 (2.6)
𝜔 =𝑣D− 𝑣L
2𝑙 (2.7)
pri tem je l polovična razdalja med kolesoma. Translatorna (v) in kotna hitrost (ω) se nanašata na središčno točko med dvema kolesoma mobilnega robota [3, 4].
Slika 2.5: Mobilni robot v koordinatnem sistemu [5]
2.1.2 Odometrija
Avtonomna vožnja mobilnega robota zahteva natančno določevanje njegove lege v prostoru.
To dosežemo z odometrijo, merjenjem poti robota po prostoru. Meritve poti izvajamo z ustrezno izbrano frekvenco. Čas odčitamo iz mikrokrmilnika. Pot pa dobimo preko analize podatkov iz kodirnikov, ki so nameščeni na gredeh motorjev. Pri tem pa se moramo zavedati, da je možnih veliko napak pri samem merjenju in računanju poti. V splošnem ločimo dve vrsti napak, ki se pojavljajo pri odometriji: sistematične (deterministične) in nesistematične (stohastične). Sistematične napake vključujejo napake pri merjenju dimenzij robota (radij koles, razdalja med kolesoma, itd.), računanju hitrosti koles in druge kinematične napake.
Večino izmed teh lahko zmanjšamo in s tem vplivamo na zanesljivost odometrije.
Teoretične osnove in pregled literature
7 Nesistematične napake pa so odvisne od vpliva okolice. Hrapava in valovita površina lahko povzroči zdrse med kolesoma in posledično pridemo do napačnih rezultatov. Če se želimo izgoniti tem vrstam napak, moramo namestiti nove senzorje na našo napravo [3-5].
Na sliki 2.5 sta prikazana položaj mobilnega robota na začetku in položaj po določenem času t. Koordinate, ki nas zanimajo, se stalno spreminjajo. Čimvečji kot bosta frekvenci
Translatorno (vk-1) in kotno (ωk-1) hitrost robota v prejšnjem koraku izračunamo po enačbah (2.8) in (2.9):
𝑣𝑘−1=𝜔L𝑘−1∙ 𝑟 + 𝜔R𝑘−1 ∙ 𝑟
2 (2.8)
𝜔𝑘−1=𝜔R𝑘−1∙ 𝑟 + 𝜔L𝑘−1∙ 𝑟
𝑑
kjer je d razdalja med dvema kolesoma.
(2.9)
Na podlagi tega lahko izračunamo še trenutne koordinate, kjer se robot nahaja:
𝑥𝑘= 𝑥𝑘−1+ 𝑣𝑘−1∙ ∆𝑡 ∙ cos(𝜑𝑡−1) (2.10)
𝑦𝑘= 𝑦𝑘−1+ 𝑣𝑘−1∙ ∆𝑡 ∙ sin(𝜑𝑡−1) (2.11)
𝜑𝑘 = 𝜑𝑘−1+ 𝜔𝑘−1∙ ∆𝑡 (2.12)
Opravljeno pot pa beležimo po enačbi (2.13):
𝑠𝑘 = 𝑠𝑘−1+ ∆𝑠 (2.13)
kjer je sk-1 opravljena pot v predhodnem koraku.
Δs naknadno izpeljemo:
∆𝑠 =∆𝑠L+ ∆𝑠R
2 (2.14)
∆𝑠L=𝑛L∙ 𝜋 ∙ 2 ∙ 𝑟
𝛽 ∙ 𝛾 (2.15)
Teoretične osnove in pregled literature
8
∆𝑠R=𝑛R∙ 𝜋 ∙ 2 ∙ 𝑟
𝛽 ∙ 𝛾 (2.16)
kjer n predstavlja število pulzov iz kodirnika, β predstavlja prestavno razmerje robota (npr.
30) in γ predstavlja količino pulzov, ki se sproži ob vsakem obratu gredi.
Odometrijo robota je potrebno preveriti. Sprva mobilnemu robotu nastavimo le translatorno hitrost. V prostoru izberemo dve točki. Robota postavimo na prvo izbrano točko in ga usmerimo proti drugi. Ko bo naprava dosegla drugo točko, jo ustavimo. Robot bo izpisal koordinate v katerih se nahaja. Preko teh in poznane prave razdalje, lahko preverimo točnost sistema [4].
2.1.3 PID krmiljenje
Za pogon koles mobilnega robota uporabljamo motorje. Njihova hitrost se spreminja glede na napetost, ki jo določamo. V industriji se za krmiljenje naprav uporablja proporcionalno integrirni diferencirni (PID) krmilni algoritem. Gre za enostavnejši sistem krmiljenja, ki zajema proporcionalni, integrirni in diferencirni gradnik. PID krmiljenje se uporablja v sistemih s povratno zanko, kot kaže slika 2.6. Delovanje pokažemo na primeru motorja z enosmernim tokom (DC). Pri vsakem ciklu dobivamo napako, ki predstavlja razliko med željeno referenčno hitrostjo in trenutno hitrostjo koles. To napako, oziroma razliko želimo v najkrajšem možnem času izničiti ali se približati vrednosti nič [2, 6].
Slika 2.6: Blokovni diagram PID krmiljenja [2]
Proporcionalni gradnik ima sledečo prenosno funkcijo:
𝑅(𝑡) = 𝐾P∙ (𝑣ref(𝑡) − 𝑣dej(𝑡)) (2.17)
kjer je vref referenčna hitrost, vdej pa dejanska hitrost.
KP je koeficient proporcionalnega ojačenja. S spreminjanjem njegove vrednosti vplivamo na obnašanje sistema. Višja kot bo vrednost koeficienta, hitrejši bo odziv sistema. Previsoke vrednosti vodijo do osciliranja sistema [2].
Integrirni gradnik le redkokdaj upodabljamo samostojno. Ponavadi se ga uporablja skupaj s proporcionalnim:
Teoretične osnove in pregled literature
Namen integrirnega gradnika je zmanjšati napako P-gradnika. Večji kot je koeficient integrirnega ojačanja (KI), počasnejši bo odziv sistema, a hkrati postane sistem bolj stabilen.
Podobno kot integrirni gradnik, se tudi diferencirni gradnik ne uporablja samostojno, ampak skupaj s proporcionalnim in integrirnim gradnikom. Tako dobimo prenosno funkcijo PID krmiljenja:
Člen KD (koeficient diferencirnega ojačenja) uporabljamo zato, da povečamo odzivnost P-člena [2], [7].
Nastavljanje PID konstant je lahko dolgotrajen postopek. Kljub temu pa se lahko ustreznim vrednostim približamo, če se zgledujemo po naslednjih priporočilih [2]:
‐ izberemo tipično hitrost, ki jo bo dosegal naš sistem. Koficienta KI in KD pustimo na ničelni vrednosti, medtem ko KP povečujemo, dokler ne dosežemo osciliranja.
‐ Ko sistem začne oscilirati, vrednost koeficienta KP razpolovimo.
‐ Povečamo vrednost koeficienta KD in opazujemo obnašanje sistema pri spreminjanju hitrosti za 5%. Izberemo vrednost, pri kateri dobimo dušen odziv (brez prenihajev).
‐ Povečamo koeficient KI dokler ne pridemo do oscilacije. KI nato delimo z 2 ali 3.
‐ Preverimo, če je odzivnost sistema zadovoljiva glede na naše aplikacije [2].
2.2 Snovanje mehatronskega sistema
Načrtovanje elektronskih sistemov zahteva dobro poznavanje komponent, ki jih želimo uporabiti. V glavnem vsak mehatronski sistem sestavljajo sledeči elementi:
‐ mehanski del,
Začetek snovanja mobilnega robota se začne pri mehanskem delu. Upoštevati moramo ceno komponent, obliko robota, njegovo težo in dimenzije. Materiali za katere se odločamo, so odvisni od namena uporabe in okolja, v katerem bo robot deloval. Pri tem moramo imeti jasen izbor komponent, ki bodo našo napravo sestavljale. Oblika mora ustrezati montaži vseh senzorjev in aktuatorjev, ki jih želimo uporabiti. Sistem mora biti poenostavljen tako, da se ga da sestaviti in razstaviti [8].
Teoretične osnove in pregled literature
10
2.2.2 Senzorji
Senzorji so ključni elementi vsakega mehatronskega sistema. Senzor je naprava, ki pretvori fizikalne količine, kot so hitrost, pospešek, temperatura, pretok itd., v električni signal, ki ga lahko merimo, oziroma analiziramo. Senzor vsebuje pretvornik in enoto za obdelavo signala.
Pri izbiri ustrezne senzorike se inženirji zgledujejo po naslednjih točkah:
‐ napaki/natančnosti/resoluciji,
Trg senzorjev je tako velik, da bi jih lahko delili glede na aplikacije ali namen uporabe. Med najpogosteje uporabljene uvrščamo: kodirnike, pospeškomere, žiroskope in kamere (slikovna zaznavala) [8].
Pri mobilnih robotih ločimo dve vrsti senzorjev:
‐ notranje senzorje (merijo stanja notranjih veličin robota),
‐ zunanje senzorje (podajanje meritev iz okolja). Slednje lahko delimo še na:
‐ aktivne, ki vplivajo na okolje preko opravljanja meritev, npr. infrardeči senzorji, laserski skenerji.
‐ pasivne, ki ne motijo okolja, npr. kamera [2].
Senzorje ločimo tudi glede na vrsto izhodnega signala, kot je prikazano v preglednici 2.1.
Preglednica 2.1: Vrsta izhodne veličine [2]
Izhodna veličina Primer aplikacije
Binarni signal (0 ali 1) Tipalni senzor Analogni signal (npr. 0…5V) Termopar Časovni signal (npr. PWM) Žiroskop Serijska povezava (USB) GPS modul Vzporedna povezava Digitalna kamera
Analogni senzorji nam vračajo analogni izhodni signal. Da lahko beremo vrednosti takih senzorjev, potrebujemo analogno digitalni (A/D) pretvornik, ki nam analogni signal spremeni v digitalno število. Gre za n-bitno število, ki je odvisno od natančnosti pretvornika.
Poleg natančnosti sta pri A/D pretvorniku pomembna še hitrost (izmenjava podatkov na sekundo) in območje razpona (npr. od 0 do 5 V). Podobno funkcijo imajo digitalno/analogni pretvorniki, ki digitalen signal zapišejo v izhodni analogni signal. Njihova resolucija je odvisna od digitalnega bitnega števila [2, 9].
Teoretične osnove in pregled literature
11
2.2.2.1 Rotacijski kodirniki
V mobilni robotiki se za nadzor vrtenja gredi DC motorjev uporabljajo kodirniki.
Uporabljamo jih v povratnih zankah, saj lahko preko teh krmilimo hitrosti motorjev.
Najpogosteje uporabljeni so magnetni in optični kodirniki. Lahko so rotacijski ali linearni.
Rotacijski so sestavljeni iz senzorja in diska, ki ga namestimo na gred motorja. Magnetni kodirniki uporabljajo Hallov senzor, ki zaznava spremembo napetosti zaradi spremembe magnetnega polja. Disk je magnetiziran, oziroma ima več magnetov nameščenih po krožnici.
Pri rotaciji diska dobimo pulze [2, 10].
Optični kodirniki delujejo analogno magnetnim. Diski so sestavljeni iz črno-belih območij.
Za senzor uporabljajo foto-diodo, ki na podlagi odboja svetlobe razlikuje črna področja od belih. Za vsako kombinacijo črne in bele barve, bodo optični senzorji sprožili pulz [2].
Na sliki 2.7 v primeru (a) ima magnetni kodirnik le en senzor. Ta zadošča za branje segmentov. Samo s tem pa ne moremo razločiti smeri vrtenja gredi motorja. V primeru (b) ima optični kodirnik nameščena dva senzorja (foto-diodi), ki sta nameščena tako, da je med njima fazni zamik. Smer vrtenja lahko ugotovimo s tem da preverimo kateri izmed senzorjev bo prej sprožil pulz. Če bo kodirnik 1 na sliki 2.7 (b) prej sprejel signal, se bo gred vrtela v smeri urinega kazalca [2].
Slika 2.7: (a) Magnetni kodirnik [10] (b) Optični kodirnik[2]
Pri mobilnih robotih je smer vrtenja koles (v ali proti smeri urinega kazalca) pomemben faktor. Zato se ponavadi odločamo za kodirnike z dvema senzorjema.
Senzorji za zaznavanje razdalje
Med najpomembnejšimi senzorji spadajo merilniki razdalje. Naprava s pomočjo teh zaznava ovire (stene in druge predmete), ki se nahajajo v prostoru. Najbolj se uporabljajo naslednje tri tipologije senzorjev: ultrazvočni, infrardeči in laserski senzor.
Ultrazvočni senzorji oddajajo akustične signale (po 1 ms) visoke frekvence (med 50 kHz in 250 kHz). Pri tem se meri čas od oddaje signala do sprejema signala. Ta čas zajema pot, ki ga zvok opravi do ovire in se nato odbije nazaj. Dobimo torej dva-kratnik merjene razdalje, kot kaže slika 2.8.
Teoretične osnove in pregled literature
12
Slika 2.8: Delovanje ultrazvočnega senzorja razdalje [2]
Ultrazvočni senzorji imajo močan sistem a hkrati lahko naletimo na nekaj težav. Odboji akustičnih signalov pod določenim kotom lahko zavedejo senzor in predstavijo objekt na daljši razdalji kot je v resnici. Drug problem nastane, če uporabljamo več senzorjev hkrati.
Zaradi interference se lahko zgodi, da nek senzor sprejme signal drugega.Tem težavam se izognemo z laserskimi in infrardečimi senzorji. Glede na to, da so laserski senzorji razdalje nekoliko večji in masivnejši, v mobilni robotiki prevladujejo infrardeči senzorji razdalje [2].
IR senzorji prožijo pulze infrardeče svetlobe s frekvenco okoli 40 kHz. Blizu emiterjev (izvora infrardeče svetlobe) se nahajajo sprejemniki (detektorji). Kot pod katerim se svetloba odbija nam določa napetost, ki jo posledično pretvorimo v razdaljo, kot kaže slika 2.9 [2].
Slika 2.9: Princip delovanja infrardečega senzorja razdalje [2]
Človeško oko ne zaznava infrardeče svetlobe. Njihovo delovanje pa lahko preverimo z uporabo kamer, ki so na tovrstno svetlobo občutljive. Slaba lastnost IR senzorjev je določanje razdalje oddaljenih predmetov. Izhodna napetost, ki jo dobimo iz senzorja se z oddaljevanjem od predmeta manjša in težko opredelimo točno razdaljo [2].
2.2.3 Aktuatorji
Aktuatorji so naprave, ki pretvorijo moč (npr. električno) v linearno ali rotacijsko gibanje.
Poznamo tri vrste aktuatorjev: električne, hidravlične in pnevmatske. Električni se
Teoretične osnove in pregled literature
13 uporabljajo za premikanje mehanskega dela mehatronskega sistema. Pogosti električni aktuatorji so: DC motorji, koračni motorji in stikala. [8]
2.2.3.1 Enosmerni elektromotorji
Enosmerni elektromotorji (angl. Direct Current Motors) ali DC motorji se veliko uporabljajo v mobilni robotiki. V večini primerov jih napajamo z baterijami preko enosmernega toka.
Imajo dovolj moči in navora, da zadoščajo za premikanje robotov z diferencialnim pogonom.
Sestavljeni so iz fiksnega dela, statorja, in iz rotirajočega dela, rotorja. Uporabljamo jih zaradi lahkega nadzora hitrosti, položaja in torzije. Njihova struktura je lahko zelo kompaktna in v splošnem imajo nizko ceno na trgu [2].
Ko gradimo mehanski del robota, moramo izbrati ustrezen sistem motorja. Ta zajema:
‐ DC motor,
‐ prestavno razmerje,
‐ optične ali magnetne kodirnike [2].
Prestavno razmerje skupaj z resolucijo kodirnika določata natančnost merjenja obratov izhodne gredi motorja. Za primer si lahko predstavljamo DC motor s prestavnim razmerjem 1:30. Na vhodno gred namestimo kodirnike, ki sprožijo 12 pulzov na vsak obrat. Za vsak obrat izhodne gredi elektromotorja, lahko na ta način dobimo 360 pulzov, kar pomeni da lahko razločimo vsako stopinjo zasuka gredi.
Na sliki 2.10 je prikazan shematski princip delovanja enosmernega motorja. Vsak motor ima določeno upornost R in navitje v obliki tuljave L. Napetost U bo sprožila električni tok i [A]
skozi motor. Preko tega dobimo navor gredi motorja (Mmotorja). Izhodni navor (Mizhodni) pa je odvisen še od vztrajnostnega momenta J [2].
Slika 2.10: Princip delovanja DC motorja in izhodne veličine [2]
Vrtilni moment na motorju je enak produktu toka i, ki teče skozi motor in navorne konstante KM:
𝑀motorja= 𝑖 ∙ 𝐾M (2.20)
Teoretične osnove in pregled literature
14
Pomembno je, da izberemo motor s primerno izhodno močjo. To definiramo kot produkt med izhodnim navorom (Mizhodni) in vrtilno hitrostjo gredi ω:
𝑃izhodna= 𝑀izhodni∙ 𝜔 (2.21)
Vhodna moč na motorju (Pvhodna) pa je odvisna od vhodne napetosti U in toka i, ki teče skozi motor.
𝑃vhodna= 𝑈 ∙ 𝑖 (2.22)
Za vsak motor je znan tudi izkoristek η. Tega izračunamo po enačbi (2.23).
𝜂 =𝑃izhodna
𝑃vhodna =𝑀izhodni∙ 𝜔
𝑈 ∙ 𝑖 (2.23)
Treba se je zavedati, da se izkoristek razlikuje glede na hitrost motorja.
Poleg tega je treba upoštevati še inducirano napetost Uind, ki nastane pri gibanju vodnikov po magnetnem polju. Električni tok lahko poenostavimo po enačbi (2.24).
𝑖 =𝑈ind 𝑅 +𝑈
𝑅 (2.24)
Pomemben je tudi kotni pospešek α, pri katerem upoštevamo navorno konstanto KM in masni vztrajnostni moment J.
𝛼 =𝑑𝜔 𝑑𝑡 =𝐾𝑀
𝐽 ∙ 𝑖 −𝑀izhodni
𝐽 (2.25)
Z naraščanjem navora na gredi, hitrost linearno pada, tok pa se linearno povečuje. Največjo moč dosežemo okoli srednje vrednosti navora. Najboljši izkoristek pa dobimo takrat, ko je vrtilni moment motorja čimmanjši [2].
2.2.3.2 H-mostič
Pri krmiljenju motorjev želimo nastavljati hitrosti naprej in nazaj. To vrsto nastavitev nam poenostavi H-mostič. Gre za vrsto integriranega vezja, ki omogoča vrtenje motorja v obe smeri. Z mikrokrmilnikom enostavno krmilimo H-mostič in posledično motor. Ne moremo pa priklopiti motorja direktno na krmilnik. Stikala na sliki 2.11 so izvedena s tranzistorji. V osnovnem stanju so vsa odprta, kar pomeni da ne prepuščajo električnega toka skozi motor.
Črki a in b opisujeta pole motorja. Motor lahko vrtimo v dve različni smeri, in sicer v smeri urinega kazalca ali v obratni smeri urinega kazalca, kot kaže slika 2.12.
Teoretične osnove in pregled literature
15 Slika 2.11: Shematski prikaz H-mostiča [2]
Za pretok električnega toka je potrebno, da sta zaprti po dve stikali. V primeru, da zapremo le stikali S1 in S4 ali pa stikali S3 in S2, bomo dobili kratek stik. Vrtenje motorja ustavimo tako da nastavimo napetost na mikrokrmilniku na 0 [2].
Slika 2.12: Kombinacije stikal glede na smer vrtenja DC motorja [2]
Integrirano vezje L293D je tipičen primer izvedbe dvojnega H-mostiča. Vezje omogoča istočasno krmiljenje dveh DC motorjev. Izhodni tok sega od 600 mAh do 1,2 A. Pri višjih električnih tokovih moramo zato uporabljati druge izvedbe vezja [8].
2.2.3.3 Multiplekser
Multiplekser je kombinatorno vezje. Pojavlja se v oblikah integriranega vezja z več vhodnimi in izbirnimi priključki ter z enim izhodnim priključkom. Uporabljamo ga za priključitev večjega števila senzorjev. Vezje deluje tako, da z izbiro binarnega števila določimo vhod, ki ga želimo upoštevati pri krmiljenju. Krmilimo torej izhodni priključek, ki je povezan z izbranim [9].
Teoretične osnove in pregled literature
16
Slika 2.13: Shema 4-kanalnega multiplekserja [9]
Na sliki 2.13 so prikazani štirje vhodi. Lahko si jih predstavljamo kot štiri led diode.
Posamezno diodo izbiramo s priključkoma x1 in x0. Izbor izvedemo z nastavljanjem napetosti na največjo (zapisana z logično številko 1) ali najmanjšo (zapisana z logično številko 0) vrednost. Izhod Y pa predstavlja priključek, s katerim upravljamo led diodo.
Kombinacije za primer na sliki 2.13 so prikazane v preglednici 2.2 [9].
Preglednica 2.2: Pravilnostna preglednica 4-kanalnega multiplekserja
X0 X1 Y
0 0 I0
0 1 I1
1 0 I2
1 1 I3
Multiplekserji pogosto vsebujejo še priključek za zagon (angl. Enable). Ko se bo le ta nahajal v visokem stanju, bo povezava med vhodi in izhodi omogočena.
2.2.4 Mikrokrmilniki
Mikrokrmilnik si lahko predstavljamo kot manjšo obliko računalnika. Gre za napravo malih dimenzij, ki nadzoruje, upravlja ali izvaja funkcije objetkov in različne procese. Vsebuje posplošen procesor, manjša pomnilnika (RAM in ROM), vhodno/izhodne enote, priključke in druge periferne naprave, kot so števniki, časovniki, A/D pretvorniki itd. Vsi elementi sestavljajo integrirano vezje [9]. Na sliki 2.14 je prikazan mikrokrmilnik ESP 32 S2.
Teoretične osnove in pregled literature
17 Slika 2.14: Primer mikrokrmilnika
Mikrokrmilnike najdemo v skoraj vseh izdelkih ali sistemih, ki vključujejo računanje, merjenje, shranjevanje ali podajanje informacij na ekranih. Posamezno napravo lahko sestavlja tudi več mikrokrmilnikov. Primer je avtomobil, kjer se lahko uporablja en krmilnik za nadzor motorja, drug za zaznavanje ovir v okolju itn. [9].
Na sliki 2.15 so prikazane glavne enote mikrokrmilnika. Glavna enota za računanje in obdelavo podatkov je centralno procesna enota ali CPE (angl. CPU). V njej se izvajajo ukazi iz programa, ki je shranjen v pomnilniku. Obstaja več vrst procesorjev. Lahko so enostavni 8 bitni ali pa bolj kompleksni 64 bitni. Mikrokrmilniki vsebujejo dve vrsti pomnilnikov:
‐ RAM, oziroma delovni pomnilnik, ki shranjuje vmesne izračune in podatke med delovanjem programa.
‐ ROM, oziroma bralni pomnilnik, ki vsebuje ukaze iz programa in vrednosti spremenljivk [9].
Branje podatkov iz senzorjev se izvaja preko A/D pretvornikov, kot kaže slika 2.15. Po drugi strani pa poteka krmiljenje aktuatorjev preko D/A pretvornikov. Mikrokrmilniki vsebujejo še mnogo drugih komunikacijskih sistemov, npr. komunikacija preko pulzno širinske modulacije (angl. Pulse Width Modulator), serijskega komunikacijskega vodila (angl. Serial Communication Interface), serijskega perifernega vodila (anlg. Serial Peripheral Interface), I2C protokola itd [9].
Pomembno vlogo imajo tudi časovniki in števniki. Ti štejejo/merijo čas med izvajanjem operacij, štejejo število ukazov in generirajo hitrost serijske komunikacije [9].
V registrih se nadzorujejo funkcije mikrokrmilnika. Ena vrsta registrov poskrbi za izvajanje aritmetičnih operacij. Ta je ponavadi nadzirana z večjimi programskimi jeziki, kot je C/C++.
Druga vrsta registrov pa se uporablja pri operacijah z ostalimi priključki [9].
Teoretične osnove in pregled literature
18
Slika 2.15: Shema notranje zgradbe mikrokrmilnikov [9]
2.2.4.1 Proženje prekinitvenih funkcij
Poseben način komunikacije predstavlja proženje prekinitvenih funkcij. Prožijo jih lahko zunanje naprave (senzorji) ali pa vgrajeni časovniki. Zunanji prekinitveni signali bodo prekinili trenutno aktivnost in izvedli prekinitveno operacijo. To določa program, ki ga uporabnik napiše. Prekinitve omogočajo nemoteno delovanje glavne zanke programa.
Pogosto se uporabljajo pri rotacijskih kodirnikih za podajanje obratov gredi [2].
2.3 Tiskana vezja
Tiskana vezja ali PCB (angl. Printed circuit boards) se uporabljajo za povezovanje elektronskih komponent. Sestavljena so iz baze in prevodniškega sloja. Baza je toga ali fleksibilna plošča izolacijskega materiala, ki omogoča nanos prevodniških materialov. Bazo iz togega materiala lahko uporabljamo tudi pri montaži drugih komponent. Prevodna plast je ponavadi sestavljena iz bakra. Omogoča tudi spajkanje in električno povezavo med elektronskimi komponentami [11]. Primer modela tiskanega vezja je prikazan na sliki 2.16.
Teoretične osnove in pregled literature
19 Slika 2.16: Primer tiskanega vezja
Tiskana vezja imajo vrsto prednosti v primerjavi z običajnim povezovanjem elektronskih komponent preko bakrenih žic:
‐ Izdelki so bolj kompaktni, zmanjšajo se dimenzije in teža izdelka.
‐ Zaradi velike proizvodnje so dostopne po nizkih cenah.
‐ Povezovanje in sestavljanje komponent lahko avtomatiziramo.
‐ Lastnosti vezja se ohranjajo tudi pri večjem številu povezav.
‐ Zagotavljajo visoko ponovljivost.
‐ Elektronske komponente so fiksirane, kar omogoča lažje identificiranje napak in vzdrževanje sistema.
‐ Napak pri notranji vezavi v tiskanih vezjih ni.
‐ Načrtovanje vezja je enostavno in ne zahteva naprednega znanja iz tega področja. Hkrati se zmanjšajo tudi možnosti za doseganje napačnih povezav med komponentami ali za nastanek kratkih stikov [11].
2.3.1 Vrste tiskanih vezij
Tiskana vezja so lahko toga ali fleksibilna. To lastnost določa izolacijski material (baza).
Fleksibilna tiskana vezja imajo bazo sestavljeno iz poliestrov ali poliamidov. V primerjavi s
Fleksibilna tiskana vezja imajo bazo sestavljeno iz poliestrov ali poliamidov. V primerjavi s