You are on page 1of 34

ARDUINO RADIONICA

Terminologija
Sistem je nain rada, organizovanja ili obavljanja jednog ili vie
zadataka u skladu sa fiksnim skupom pravila, programa ili plana.
Drugim reima, aranman u kome su sve jedinice povezane i rade
zajedno prema programu ili planu.
Ugraeni sistem (engl. embedded system) je specijalizovani
sistem koji je deo veeg sistema ili maine. Ugraeni sistem je
obino smeten na mikroprocesorsku ploicu sa programima koji su
uskladiteni u stalnu memoriju (ROM). On obrauje fiksni skup
unapred programiranih instrukcija za kontrolu elektromehanike
opreme koja moe biti deo nekog veeg sistema. Praktino svi
ureaji koji imaju digitalni interfejs - satovi, mobilni telefoni,
mikrotalasne penice, plejeri, automobili - koriste ugraene sisteme.


Sistem za rad u realnom vremenu (engl. real-time system) je onaj
koji mora da obradi podatke i proizvede odgovor/reakciju u
odreenom roku, inae se mogu pojaviti ozbiljne posledice
ukljuujui i otkaz sistema. Kod ovih sistema vai pravilo da su
korisni samo ako daju odgovor u odreenom roku, u suprotonom su
beskorisni. Primeri ove vrste sistema su ABS kod automobila,
sistem za rezervaciju karata na aerodromu itd.


Sajber-fiziki sistem (engl. Cyber-physical system - CPS) je sistem
koji poseduje vrstu spregu izmeu svojih raunarskih i fizikih
elemenata. Ne moe se govoriti o raunarskoj strani bez
razumevanja kako se ponaa fizika strana a kako se ona ponaa
zavisi od raunanja koje se izvodi. Veina modernih aviona,
automobila, senzorskih mrea, pa ak i energetskih mrea spadaju
u ovu kategoriju sistema. Po samoj definiciji, ovo polje je
interdisciplinarno i ljudi razliitih strunih znanja, koji inae nikada
nisu radili jedni sa drugima, primorani su danas da rade na
reavanju sloenih problema koje postavlja ova oblast.


Jedna vana klasa ovih sistema zove se Internet stvari (engl.
Internet of things), koji je mrea koja moe da povee izvorne fizike
objekte koristei identifikovane njihove adrese na osnovu
tradicionalnih nosaa informacija, ukljuujui Internet i
telekomunikacione mree.


Iako postoji znaajno preklapanje izmeu ugraenih sistema,
sistema za rad u realnom vremenu i sajber-fizikih sistema, postoje
razlike izmeu njih.
Sistemi za rad u realnom vremenu su vaan podskup ugraenih
sistema.
Glavna razlika izmeu CPS i tradicionalnih ugraenih sistema je u
korienju komunikacije, koja dodaje rekonfigurabilnost i
skalabilnost kao i kompleksnost i potencijalnu nestabilnost.
CPS jo uvek imaju znatno vie inteligencije u senzorima i
aktuatorima kao i znatno otrija ogranienja po pitanju performansi


Senzor (dava, osetilo, detektor) je ureaj koji meri fizike veliine i
konvertuje ih u signal itljiv posmatrau i/ili instrumentu. Na primer,
ivin termometar konvertuje izmerenu temperaturu u irenje ivine
tenosti, koja se moe oitati na cevi sa podeocima.


Signal u elektrotehnici - fizika veliina koja sadri informacije.
Moe biti digitalni ili analogni.

Informacija je znaenje koje ovek pripisuje podacima u skladu sa


optim dogovorima.

Podatak je jednostavna neobraena izolovana misaona injenica


koja ima neko znaenje.


Aktuator (pokreta, izvrni ureaj, aktivator) je ureaj koji
kontrolisano pretvara elektrinu energiju (ili neku drugu) u
mehaniku energiju.


Integrisano kolo (engl. integrated circuit - IC) je sloeno
elektronsko kolo sastavljeno iz mnotva elemenata i elektronskih
kola objedi-njeno na jedinstvenoj podlozi i spremno za ugradnju u
sloenije sisteme ali kao jedinstvena komponenta. Uobiajeno je da
je celo-kupna mrea komponenti realizovana na jedinstvenom
komadu poluprovodnika, koji se nalazi u sreditu integrisanog kola i
koji se obino zove ip (engl. Chip).

...
Interfejs - Komponentne veze izmeu dva ili vie odvojenih
podsistema; interfejs moe biti: ili hardverska komponenta
(posrednik, meusklop) koja povezuje dva ureaja ili deo memorije,
ili registri koje koriste dva ili vie raunarskih programa.
Veza izmeu raunara i osobe koja pokuava da radi sa njim
(korisniki interfejs). Tastatura je interfejs, monitor takoe.

Analogija ovek - mikrokontroler


Veina novajlija zainteresovanih za oblast
mikrokontrolera/mikroprocesora se suoava sa mnotvom novih
termina iz ove oblasti i ima problema sa razumevanjem nekih
funkcionalnih sklopova. Uvek je lako neto razumeti pravljenjem
analogije sa poznatim stvarima. To je princip koji e i u ovom
sluaju biti primenjen. Naime, uspostavie se relacija izmeu
ovekovog tela i mikrokontrolera.
esto u svakodnevnom govoru se kae da maine rade skoro kao
ovek - samo sa donekle smanjenom interakcijom. One imaju svoje
srce i mozak. Naravno, one su kontrolisane od strane samog
oveka, ali ine se pokuaji da se naprave maine koje same misle
- koncept vetake (mainske) inteligencije.


Ljudsko srce - procesorsko srce: Osnovna funkcija ljudskog srca
je da pumpa krv u sve delove ljudskog tela i da ih aktivira i
usklauje.

Isto tako sistemski sat (clock system) mikrokontrolera pumpa impulse ka


svim unutranjim sklopovima mikrokontrolera/mikroprocesora i sinhronizuje ih.
Dakle, moe se rei da je srce mikrokontrolera/mikroprocesora sistemski sat
(sistemsko kolo).


Ljudski mozak - procesorsko jezgro: Ljudski mozak je veoma
sloena arhitektura. On obavlja raunanja i miljenje (logiko,
aritmetiko, lateralno) o razliitim stvarima. Aritmetiko-logika
jedinica (Artithmetic-logical unit - ALU) mikrokontrolera je ba kao i
ljudski mozak (u funkcionalnom smislu), ali ne toliko sloena. Ona
izvrava aritmetika raunanja, logika raunanja, bit-po-bit
raunanja itd. , pa stoga se moe rei da je ALU mozak
mikrokontrolera.


Ljudska memorija - procesorska memorija: Sam mozak sadri
ogromnu memoriju i njen kapacitet je oko 2,5 petabajta (ili 1 milion
gigabajta). Meutim, mikrokontroler nema tako veliku internu
memoriju, tako da mora spolja da se prikljue tzv. memorijski ipovi
(kilo do megabajtova).
Mikrokontroler raspolae sa dve vrste memorije,
radnom i
stalnom.


Radna memorija (Random Access Memory - RAM)
uva privremene vrednosti promenljivih i rezultate.

Stalna memorija (Read Only Memory - ROM)


uva softverski program koji upravlja hardverskim ureajima koji su
prikljueni na mikroprocesor/mikrokontroler. Osim toga uva
vrednosti stalnih promenljivih, tabele pretraivanja (lookup table),
nizove i rezultate.
Kod mikrokontrolera i RAM i ROM se pojavljuju kao interna
memorija, to zavisi od konkretne realizacije mikrokontrolera.


Ljudski U/I portovi - procesorski U/I portovi: Ljudsko telo se
sastoji od ulazno/izlaznih delova kao to su oi, ui, ruke, noge,
nos, usta itd. Korienjem ovih ulaza/izlaza ovek moe da vidi,
uje, hoda, mirie, govori, jede itd. Svi oni su povezani na interni
sistem nerava. Isto tako su svi ulazni/izlazni ureaji povezani sa U/I
portovima mikrokontrolera.

Blok dijagram mikrokontrolera


Na osnovu navedenog, moe se nacrtati interni blok dijagram
mikrokontrolera.

Mikrokontroler je
Mikrokontroler (esto se koriste skraenice C, uC ili MCU) je mali
kompjuter na jednom integrisanom kolu koje sadri procesorsko
jezgro, memoriju i programabilne ulazno/izlazne periferije.
Programska memorija je u obliku NOR fle ili OTP ROM i esto se
nalazi na ipu kao i obino mala koliina RAM-a.

...
Mikrokontroleri su projektovani za ugraene aplikacije,
za razliku od mikroprocesora koji se koriste u personalnim
raunarima ili drugim aplikacijama opte namene. Zbog velike
koliine integracije periferije i niskih trokova proizvodnje, C radi
na niskim frekvencijama, obino nekoliko desetina ili stotina MHz.
Meutim, mikrokontroleri su pogodni za irok spektar aplikacija, koje
se koriste kako u industrijskim okruenjima tako i u proizvodima
iroke potronje.

Za razliku od mikroprocesora, C se koristi u situacijama gde je


potrebna jedna glavna funkcionalnost, koja se realizuje u okviru
programa koji je izvrava.

...
Mikrokontroler versus Mikroprosesor

...
Mikrokontroleri su korisni u tom smislu to mogu da komuniciraju sa
drugim ureajima, kao to su senzori, motori, prekidai, tastature,
monitori, memorije i ak drugi mikrokontroleri.
U principu, mnogi mikrokontroleri kombinuju metode
povezivanja (interfejsa) sa eksternim svetom. U uproenoj
formi,
mikrokontrolerski sistem moe da se posmatra kao sistem koji
ita (prati) ulaze,
vri obradu i
pie na (kontrolie) izlaze.

Interfejsi mikrokontrolera

Arhitektura mikrokontrolera
Bez dobrog poznavanja teorije nema ni uspene prakse. U
udbenicima se moe proitati da postoji vie arhitektura
mikrokontrolera. Pod arhitekturom se ovde misli na stil graenja
mikrokontrolera. Mikrokontroleri se grade imajui u vidu i hardver i
softver. Klasifikuju se prema hardverskim i softverskim modelima.
Proizvoai se pridravaju ovih modela prilikom proizvodnje
mikrokontrolera.
Hardverski modeli mikrokontrolera
U sutini postoje dve vrste hardverskih modela u arhitektonskom
smislu. Generalno, u raunaru postoje dva glavna dela, tj. centralna
procesna jedinica (Cenrak Orocessing Unit CPU) i memorija.
Memorija se sastoji od dva dela. To su memorija za uvanje
programa (ROM; programska memorija) i memorija za uvanje
podataka (RAM). Mikrokontroleri se arhitektonski klasifikuju prema
organizaciji memorije u raunaru.

Fon Nojmanova arhitektura


Ovaj tip arhitekture dobio je ime po svom pronalazau, Fon
Nojmanu. On je razvio ovu arhitekturu dok je gradio Electronic
Numerical Integrator and Calculator(ENIAC) raunar.

Prema ovoj arhitekturi, program (odnosno


instrukcije) i podaci uvaju se u istoj memoriji.
Da bi CPU pristupio memoriji potrebno je da ima tri magistrale.
Magistrale su linije koje prenose signale ili podatke. Adresna
magistrala se koristi da poalje adresu memorijske lokacije,
kontrolna , magistrala se koristi za slanje operacije koja treba da se
obavi na memoriji, tj. itanje, upisivanje ili brisanje. Magistrala
podataka se koristi za slanje ili primanje podataka koji treba da budu
upisani u memoriju ili se itaju iz memorije. Adresna magistrala je
jednosmerna (podaci mogu da teku samo od CPU ka memoriji) a
ostale magistrale su dvosmerne (podaci mogu da teku u oba
smera).

Harvard arhitektura
Kod ovog tipa arhitekture mikrokontrolera,

programska memorija i memorija za podatke su


odvojene.
Svaki tip memorije ima svoju adresnu magistralu, kontrolnu
magistralu i magistralu instrukcija. Ovaj tip arhitekture je bri od
drugog tipa zato to programu i podacima moe da se pristupa
istovremeno, dok kod Fon Nojmanovske arhitekture samo jednoj
memorijskoj lokaciji moe jednovremeno da se pristupa. Dakle,
Harvard arhitektura izvrava instrukciju bre od Fon Nojmanove.
Uglavnom, mikroprocesori se realizuju korienjem Fon
Nojmanove arhitekture a

mikrokontroleri koriste Harvard arhitekturu.

Softverski modeli mikrokontrolera


Mikrokontroleri se takoe klasifikuju prema skupu instrukcija koje
koriste.
Skup instrukcija obuhvata instrukcije koje treba dati korisniku na
raspolaganje da bi se izvrile aritmetike, logike i druge operacije.
Te instrukcije treba da su razumljive za CPU. Kako je rasla
popularnost mikroprocesora rastao je i broj operacija koje je mogao
da obavi unutar jednog reda instrukcije. Meutim, uz ovo su se
pojavili i neki problemi. Reimi adresiranja postajali su sve sloeniji i
razliitim instrukcijama su trebali razliiti ciklusi za izvravanje
(vremena izvravanja). Shodno tome razvila su se dva tipa

arhitektura mikrokontrolera na osnovu skupa


instrukcija.


Raunari sa redukovanim skupom instrukcija (Reduced
instruction set computer - RISC). Ovaj tip arhitekture ima veoma
jednostavne komande, ali zauzima mnogo memorije (RAM) za
izvravanje. Svakoj instrukciji potrebno je isto vreme za izvravanje.
Uzmimo primer sabiranja dva broja, na primer a i b. Algoritam
programa bi mogao da ima sledei oblik:
Uitaj broj a u akumulator.
Uitaj broj b u akumulator.
Saberi dva broja.
Zbir sauvaj u akumulatoru.
Prema algoritmu trebalo bi da se napiu etiri reda komandi da bi se
sabrala dva broja. Ovaj proces je pojednostavljen kao u sluaju
raunara sa skupom sloenih instrukcija (Complex instruction set
computer - CISC).
Akumulator je vrsta registra (memorije) koji se koristi za skladitenje
operanada i rezultata aritmetikih operacija i korisnik mu moe
pristupiti.


Raunar sa skupom sloenih instrukcija (Complex instruction
set computing). Ovaj tip skupa instrukcija ima za cilj da smanji
broj potrebnih instrukcija potrebnih za izvravanje neke
operacije. Na primer, za prethodno pomenuto sabiranje dva broja
RISC-u su trebala etiri reda koda dok je CISC-u potreban samo
jedan red koda. Meutim, u sluaju sloenih operacija reimi
adresiranja postali su veoma sloeni i komplikovani za
programiranje. CISC se oslanja na hardver i vie tranzistora je
potrebno integrisati u CPU da bi ga podrao. Meutim, u sluaju
korienja programskih jezika visokog nivoa kao to su C i C++,
kompajler treba da radi manje posla u poreenju sa RISC
arhitekturom.
Istorijski posmatrano, CISC se prvi pojavio a onda se u jednom
trenutku pojavila potreba za jednostavnijim skupom instrukcija i
RISC je stupio na scenu.

Ova prezentacija je nekomercijalna.


Slajdovi mogu da sadre materijale preuzete sa Interneta, strune i naune grae, koji su zatieni Zakonom o
autorskim i srodnim pravima. Ova prezentacija se moe koristiti samo privremeno tokom usmenog izlaganja
nastavnika u cilju informisanja i upuivanja studenata na dalji struni, istraivaki i nauni rad i u druge svrhe se
ne sme koristiti
lan 44 - Dozvoljeno je bez dozvole autora i bez plaanja autorske naknade za nekomercijalne svrhe nastave: (1)
javno izvoenje ili predstavljanje objavljenih dela u obliku neposrednog pouavanja na nastavi; - ZAKON O
AUTORSKOM I SRODNIM PRAVIMA ("Sl. glasnik RS", br. 104/2009 i 99/2011)
Dragan S. Markovi

You might also like