Download as pdf or txt
Download as pdf or txt
You are on page 1of 40

Programiranje hardvera i

ugrađeni sistemi

Predmetni profesor : doc. dr. Marko Tanasković


Predmetni asistent : doc. dr. Marko Tanasković
E-mail: mtanaskovic@singidunum.ac.rs
Organizacija kursa

• Predavanja: Predstavljanje konceptata i ilustracija kroz


jednostavne primere i interakciju sa studentima

• Vežbe: Praktična primena usvojenih koncepata kroz mini


vežbe sa hardverskim komponentama i Mikroelektronika
platformi
Materijali

• Osnovna literatura
1.) Slajdovi sa predavanja i vežbi

• Dodatna literatura
1.) John Catsoulis, Designing embedded hardware, O’Reilly,
2015
2.) Internet (Google kao Vaš najbolji prijatelj)
Predispitne i ispitne obaveze studenata

• Uspešnost studenata u savlađivanju predmeta sistemi za rad


u realnom vremenu se prati kontinualno tokom nastave i
izražava poenima.

• Ispunjavanjem predispitnih obaveza i polaganjem ispita


student može ostvariti najviše do 100 poena, pri čemu
predispitne obaveze iznose do 70 poena, a završni ispit do 30
poena.
Predispitne i ispitne obaveze studenata

• Student je obavezan u ispitnom roku da prijavi ispit i da izađe


na završni deo ispita (III deo) ili da polaže integralno završni
deo ispita, I i II kolokvijum iz kojih nije
ispunio predispitne obaveze.

• Ukoliko student ne ostvari poene na predispitnim


obavezama polaže ispit u celini na završnom ispitu.
Predispitne i ispitne obaveze studenata

• Konačna ocena studenta formira se sabiranjem poena koje


student ostvari na predispitnim obavezama i na završnom
ispitu.

• U ukupan broj bodova za ocenu 6 (51 bod) računaju se


isključivo bodovi stečeni prilikom provere znanja (kolokvijumi i
završni ispit), dok se ostali bodovi uzimaju u obzir za više
ocene.

• Student može na završnom ispitu da položi ispit ukoliko je na


svim ispitnim obavezama zaradio 51-60 poena (ocena šest),
odnosno 61-70 poena (ocena sedam)..
Predispitne i ispitne obaveze studenata

• Konačna ocena studenta formira se na bazi osvojenih poena


na sledeći način:

• 51-60 poena – ocena 6 (šest);


• 61-70 poena – ocena 7 (sedam);
• 71-80 poena – ocena 8 (osam);
• 81-90 poena – ocena 9 (devet);
• 91-100 poena – ocena 10 (deset).
U toku semestra boduje se:
• 1. Prisustvo na predavanjima i vežbama (0-10 poena)
– Obavezno je prisustvo od 50% nastavi za sve studente, s
tim što se zaposleni studenti mogu uz potvrdu o zaposlenju
osloboditi prisustva nastavi. Potvrdu o zaposlenju zaposleni
studenti mogu da predaju u studentsku službu, gde će im to
biti evidentirano u Informacioni sistem. Zaposleni studenti
bodove za dolaske mogu nadoknaditi kroz izradu i odbranu
seminarskih radova u iznosu do 10 bodova.
• 2. Kolokvijum I (0-30 poena), s tim što je neophodno da
student osvoji minimalno 17 poena da bi položio I
kolokvijum
• 3. Kolokvijum II (0-30 poena), s tim što je neophodno da
student osvoji minimalno 17 poena da bi položio II
kolokvijum.
Kolokvijum

• Bodovi od 0 do 10 smatraju se nedovoljnim za prolazak na


kolokvijumu, pa se oni ne sabiraju u konačnu ocenu
(označavaju da student nije položio kolokvijum, te se takvim
studentima (koji su ostvarili manje od 11 poena) upisuje 0
poena u rezultate sa kolokvijuma).
Kolokvijum

• Bodovi od 11-16 označavaju da je student uslovno položio


kolokvijum i da ima pravo da se pojavi na dodatnom
usmenom/pismenom delu (na zakazanom
popravnom kolokvijumu, na konsultacijama i sl.) u cilju
sticanja dodatnih poena – do maksimalnih 17 poena. Ukoliko
student ne ostvari dodatne poene upisuje mu se 0 poena na
datom kolokvijumu.

• Bodovi od 17-30 označavaju da je student položio


kolokvijum, te se ti bodovi sabiraju i ulaze u ukupnu/konačnu
ocenu.
Kolokvijum

Polaganje kolokvijuma:

Kolokvijumi se polažu:
• I kolokvijum u 6. nedelji nastave,
• II kolokvijum u 12. nedelji nastave,

• Na drugom kolokvijumu mogu se polagati II i I kolokvijum,


dok se na trećem mogu polagati sva tri dela (I, II i III deo
ispita).
Format kolokvijuma

• Kolokvijumi I i II će imati pismeni i projektni deo

Pismeni deo je klasičan test znanja (maksimalan broj bodova je


20, 10 bodova je neophodno za prolaz)

Projektni deo kolokvijuma se brani usmeno i putem


demonstracije i nosi maksimalno 10 bodova

• Završni ispit će biti u formi projektnog zadatka koji se brani


usmeno i kroz praktičnu demonstraciju
Zašto vredi uložiti vreme u dobro
savladavanje ovog kursa?

?
Ugrađeni sistemi oko nas
Ugrađeni sistemi su svuda oko nas – sve postaje ’’pametno’’
Projekcije broja potrebnih ugrašenih
sistema

• Potreba za kontrolerima i ugrađenim sistemima eksponencijalno raste

• Tržištu rada su preko potrebni inženjeri koji znaju da programiraju ugrađene


sisteme
Razvoj embedded softvera i hardvera ima
jako dobru perspektivu
• Razvoj embedded softvera ne može se naučiti za par meseci

• Potrebno je imati osnovna znanja iz raznih oblasti

SRV
Internet stvari
Ugrađeni sistemi
Mikrokontroleri
Poznavanje elektronike /
hardwera
SAU,
Programski jezici
SIS

Matematika, fizika
Zašto učiti embedded sisteme?

• Naučite embedded sisteme, iskoristite naučeno u prethodne


tri godine

• Imaćete znanja i veštine koje drugi ne mogu lako da


osvoje!
Silabus - Program predmeta

Nedelja Tema/Aktivnost
I Definicija, podela i primeri ugrađenih sistema
II Uvod u arhitekturu računara
III Asemblerski jezik
IV Osnove elektronike
V Osnove elektronike
VI I Kolokvijum
VII Naponski izvori
VIII Pravljenje hardvera
Silabus - Program predmeta

Nedelja Tema/Aktivnost
X Dodavanje periferija korišćenjem SPI i I2C
XI Serial ports
XII II Kolokvijum
XIII Analog electronics
XIV Arhitekture raznih kontrolera
XV Arhitekture raznih kontrolera
Programiranje hardvera i
ugrađeni sistemi
Uvod

Predmetni profesor : doc. dr. Marko Tanasković


Predmetni asistent : doc. dr. Marko Tanasković
E-mail: mtanaskovic@singidunum.ac.rs
Ugrađeni (embedded) sistemi

• Ugrađeni sistem je računarski sistem sa specifičnom


funkcionalnošću u okviru većeg mehaničkog ili električnog
sistems, često sa realnim vremenskim ograničenjima

• Sistem je ugrađen kao samo jedan od delova kompletnog


mehaničkog ili električnog sistems

• 98% svih proizvedenih mikroprocesora se koriste kao


ugrađeni sistemi
Klasični računarski sistemi
• Računarski sistem je celina za sebe – može da funkcioniše
samostalno bez bilo kakvih drugih eksternih delova

• Tipični primeri:

-džepni kalkulator
-personalni računar

NISU UGRAĐENI SISTEMI


Ugrađeni računarski sistemi
• Funkcionišu kao deo većeg sklopa (celine=

• Tipični primeri:

-Autopilot u avionu
-Kontrola sistemom protiv
proklizavanja u automobilu (ABS)

• ABS kontroler van sistema automobila


• nema nikakvu funkciju

JESU UGRAĐENI SISTEMI


Razlika između klasičnih i ugrađenih
računarskih sistema
• Osnovne pozitivne karakteristike koje odvajaju ugrađene od
klasičnih računarskih sistema su:
- mala potrošnja
- mla veličina
- manje cena po jedinici
- veći radni opsezi i mogućnost rada u lošijim uslovima

• Pozitivne karakteristike su kompenzovane time da u odnosu


na klasične računarske sisteme, ugrađeni sistemi imaju
znatno manje procesorske resurse, što ih čini dosta
komplikovanijim za programiranje i interakciju
Struktura ugrađenih sistema
• Moderni ugrađeni sistemi se najčešće baziraju na
mikrokontrolerima – kod kojih je centralna procesorska
jedinica integrisana sa memorijom i periferijama na jednom
čipu)

• Međutim sreću se i arhitekture bazirane na mikroprocesorima


(procesor, memorija i periferije se nalaze na različitim
integrisanim kolima). Ovo je čest slučaj kod kompleksnih
sistema

• Procesori koji se koriste mogu biti procesori generalne


namene ili specijalizovani za određene primene, a mogu biti
čak i pravljeni posebno za datu namenu
Dizajn ugrađenih sistema
• Pošto ugrađeni sistemi imaju posebnu namenu, oni se
najčešće posebno dizajniraju za svaku konkretnu aplikaciju da
bi se optimizovala veličina i cena i da bi sistem bio pouzdan
za datu namenu.

• Neki ugrađeni sistemi se i masovno proizvode, čime se


postiže značajno smanjenje njihove cene

• Ugrađeni sistemi se najčešće koriste kao kontroleri u različitim


aplikacijama
Jednostavan primer upravljačkog
zadatka
• Većina ugrađenih sistema su zapravo upravljački sistemi
• Periodično očitavati vrednost senzora i reference, izračunavati
upravljački signal i pisati ga na D/A.

referentni
signal A/D
Izračunavanje upravljačkog signala
D/A
po upravljačkom algoritmu
A/D

Sistem
Senzor kojim se Aktuator
upravlja
Malo složeniji primer ugrađenog sistema
• Servo kontroler za elektro motor

• Mogućnost kontrole struje, brzine ili položaja motora

• Nekoliko načina za čitanje referentnog signala

• Nekoliko digitalnih ulaza za upravljanje

• Digitalni i analogni izlazi za ispisivanje merenih signala

• Mogućnost komunikacije sa personalnim računarom

• Komunikacija sa master kontrolerom


Malo složeniji primer ugrađenog sistema

https://www.youtube.com/watch?v=KopTCbUcyjk
Sistemi za rad u realnom vremenu

• Računarski sistemi za rad u realnom vremenu (SRV) su


računarski sistemi čija ispravnost zavisi ne samo od logičkih
rezultata izračunavanja, već i od vremena u kome su ti
rezultati proizvedeni

• Sistemi za rad u realnom vremenu su kontrolisani sistemi koji


izvršavaju sve svoje procesne funkcije u zadatim vremenskim
ograničenjima
Ima li razlike između embedded sistema i
sistema za rad u realnom vremenu?

Sistemi za rad u
realnom vremenu

Embedded sistemi
Oblasti primene ugrađenih sistema

• Kontrola velikih hemijskih i nuklearnih postrojenja

• Kontrola kompleksnih proizvodnih procesa


Oblasti primene ugrađenih sistema

• Auto industrija (ABS, self parking, cruise control,...)

• Avio industrija i kontrola letenja


Oblasti primene ugrađenih sistema

• Bela / kućna tehnika

• Robotika
Oblasti primene ugrađenih sistema

• Medicinski uređaji

• Telekomunikacioni sistemi
Oblasti primene ugrađenih sistema

• Upravljanje železničkim saobraćajem


• Automatizacija u industriji
• Istraživanje svemira
• Vojna industrija
• Mnoge druge oblasti...

• Ugrađeni i sistemi u realnom vremenu su svuda oko nas


Interesantni primeri

https://www.youtube.com/watch?v=JoHfJ6LEKVo
Interesantni primeri

https://www.youtube.com/watch?v=n_6p-1J551Y
Interesantni primeri

https://www.youtube.com/watch?v=w2itwFJCgFQ&t=144s
Interesantni primeri

https://www.youtube.com/watch?v=FJmlt3_dOuA

You might also like