Ugrađeni računarski sistemi
Sistemi u realnom vremenu pr. 3
Vanr.prof.dr. Lejla BanjanovićMehmedović
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Izazov se zove ugrađeni sistemi...
Revolucija u domenu ugrađenih (embedded) sistema
Embedded digitalna tehnologija je inkorporirana u
sve vrste opreme i sistema,
koji se koriste za uvećanje funkcionalnosti
unapređenje operativnosti po nižim cijenama.
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
1
Ugrađeni sistemi
Primjeri proizvoda koji
koriste ugrađene
sisteme:
mobilni telefoni, MP3
plejeri, kablovski
modemi, digitalne
kamere, itd.
industrijski roboti,
automobili
Embedded sistemi su
najčešće masovni
proizvodi!
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Primjene Ugrađenih sistema
Alarmna zaštita
Jednostavne kućne
aplikacije (mikrovalne
pećnice, veš-mašine,...)
Dojava alarma
Dojava alarma SMS-om
fiksnom
telefonskom linijom
Sigurnosne brave
Sistemi u realnom
vremenu 3
Copyright: Lejla Banjanović-Mehmedović
2
Primjene Ugrađenih sistema
Svi uređaji kojima se
upravlja daljinskim
upravljačem
upravljanje
zagrijavanjem,
kondiciniranjem zraka
u proizvodnim
jedinicama u robotici do
sistema proizvodne
automatizacije i
kontrolnih sistema
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Primjene Ugrađenih sistema
U medicini, djelimično u
dijagnostičkoj medicinskoj
opremi,
... do inteligentnih uređaja
koji se implementiraju u
ljudsko tijelo
Transport - moderni
automobili imaju po barem
jedan mikrokontroler, npr.
mikrokontroleri upravljaju
motorom, ABS sistem
kočenja, itd. pa do kamiona,
vozova, letjelica...
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
3
Ugrađeni sistemi (eng. Embedded
systems)
Definicija 1: Embedded sistemi su računarski sistemi sa jako
izraženom integracijom hardvera i softvera, prije svega
namjenjeni da obavljaju specifične funkcije.
Definicija 2: Embedded sistemi su računarsko bazirani sistemi
ugrađeni u okviru drugog sistema, za koga obezbedjuju bolju
funkcionalnost i performanse.
Definicija 3: Embedded sistemi su sistemi specijalne namjene
kod kojih je računar u potpunosti enkapsuliran od strane
uredjaja koga on kontroliše. Nasuprot računaru opšte nemjene,
kakav je personalni računar (PC mašina), embedded sistem
obavlja jedan ili veći broj unaprijed definisanih zadataka, obično
sa veoma specifičnim zahtjevima.
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Ugrađeni sistemi
Evropa je svjetski lider
u embedded tehnologiji
za:
Avioniku
Automobilsku industriju
Industriju
Komunikacije
Elektronsku industriju
90% svih kompjuterskih
uređaja je u embedded
sistemima a ne u
desktop sistemima!
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
4
Ugrađeni sistemi
Tehnologija ugrađenih sistema je najbrži razvojni
sektor u IT danas!
Npr. ugrađena elektronika i softver učestvuju u
22% industrijskih automatizovanih sistema,
41% korisničke elektronike,
33% medicinske opreme!
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Razlike između embedded
sistema i mašina opšte namjene
1.
2.
3.
4.
5.
Embedded sistemi su namjenjeni da obavljaju specifične zadatke
dok se PC računari prvenstveno koriste kao računarske mašine
opšte namjene.
Rad embedded sistema podržan je od strane širokog dijapazona
procesora i procesorskih arhitektura.
Embedded sistemi treba da su jeftini.
Embedded sistemi imaju ograničenja koja se odnose na rad u
realnom vremenu:
1.
vremensko osjetljiva ograničenja (time sensitive constraints)
2.
vremensko kritična ograničenja (time critical constraints)
Ako embedded sistem koristi operativni sistem to obično mora biti
RTOS (Real Time Operating System).
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
5
Razlike između embedded
sistema i mašina opšte namjene
6.
7.
8.
9.
10.
11.
12.
Implikacije softverskih grešaka su značajno ozbiljnije kod
embedded sistema u odnosu na desktop sisteme.
Embedded sistemi se u velikom broju slučajeva izrađuju kao
baterijsko napajani uređaji pa zbog toga je imperativ da se oni
izvode kao sistemi sa minimalnom potrošnjom.
Embedded sistemi moraju da rade u ekstremnim ambijentnim
uslovima.
Embedded sistemi imaju daleko manji broj ugrađenih sistemskih
resursa u poređenju sa desktop sistemima.
Embedded sistemi čuvaju sav svoj objektni kod u ROM-u.
Embedded sistemi zahtjevaju korištenje specijalnih sredstava i
metoda za projektovanje.
Embedded mikroprocesori obično imaju implementirano
namjenska debugging kola (watchdog tajmeri, self-test kola, itd.).
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Real-Time embedded sistemi
Odnos između RTS-ova (Real Time Sistems) i embedded
sistema
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
6
Embedded sistemi za rad u
realnom vremenu
Odziv na spoljne događaje uključuje:
prepoznavanje trenutka kada se događaj desio;
obavljanje procesiranja kao odziv na pojavu događaja;
generisanje rezultata za zadano vremensko ograničenje
Sistem za rad u realnom vremenu
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Reakcija na događaje
Pri pojavi određenih događaja unutar mikrokontrolera se registruje Interrupt (zahtjev za
prekid tekućeg procesa).
Primjer primjene Interrupt-a je:
•ukoliko se stanje promjeni na nekom od ulaznih pin-ova
•ukoliko je protekao konkretno definisani vremensko period,
•ukoliko je serijski prenos okončan
•ukoliko je okončano mjerenje putem A/D konvertera
Ukoliko se pojavi događaj koji je povezan sa pozivom Interrupt-a slijedi tok događaja:
1.Unutar specijalnog registra postavlja se vrijednost bita (Interruptflag )
2.Daljnji tok osnovnog programa se prekida, Interruptflag se briše i pokreće se podprogram
(Interrupt Service Routine - ISR)
3.Nakon završetka podprograma, nastavlja se sa izvravanjem naredbi u osnovnom programu
nastavljajući sa narednom naredbom nakon poziva Interrupta
Copyright: Lejla BanjanovicMehmedovic
7
Razvojna kros-platforma
Softver za embedded sistem se razvija na jednoj
platformi, a izvršava na drugoj.
Host sistem je sistem na kome se embedded
softver razvija.
Ciljni (target) sistem je embedded sistem koji se
razvija. U najvećem broju slučajeva, host i ciljni
sistem nisu bazirani na istom procesoru.
Glavno softversko razvojno sredstvo koje čini
razvojnu kros-platformu mogućom predstavlja kroskompajler. Kros-kompajler je kompajler koji se
izvršava na jednom tipu procesorske arhitekture, a
generiše objektni kod za drugi, različit tip procesorske
arhitekture.
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Softver embedded sistema
Embedded RTOS (Real Time Operating Sistem)
Operativni sistem je specijalizirana kolekcija
sistemskih programa koja upravlja fizičkim
resursima računara.
Aplikacioni softver
Aplikativni programi – su programi pisani za
rješavanje specifičnih problema (navigacija aviona,
upravljanje kretanjem robota)
While(1)
{
Embedded Program
}
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
8
Operativni Sistemi mobilnih robota
sa ugrađenim sistemima
•A/ROSE
•Embedded Linux
•Inferno (distriobuirani operativni sistem)
•ROM-DOS
•Minix version 3
•T2 SDE
•Windows XP Embedded
•Windows CE
•.NET Micro Framework
•QNX
Copyright: Lejla BanjanovicMehmedovic
Programski jezici realnog
vremena
Jezici za programiranje ugradjenih
računarskih sistema
Asembleri
C, C++, C#
Java, Java++
Matlab
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
9
Programski jezici realnog
vremena
treba da podrže izraze i analizu
vremenskog ponašanja na jedan od
tri načina:
Eliminacija konstruktora koji imaju
neutvrđena vrem. izvršenja
Ekstenzija postojećih jezika (npr. C za
realno vrijeme)
Konstrukcija jezika u sprezi sa
operativnim sistemima
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Kako izvršiti izbor jezika realnog
vremena?
Od globalnih zahtjeva na RSRV
Tačnost
Pravovremenost
Sigurnost
Pouzdanost
do zahtjeva na softver
Tačan softver
Pouzdan softver
pa do opštih i korisničkih zahtjeva na jezik
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
10
Opšti zahtjevi na programske
jezike
Deklaracije
Tipovi
Incijalizacija
Konstante
Kontrolne strukture
Vidljivost
Modularnost i kompajliranje
Rad sa izuzecima
Rad nad bitima
Multitasking
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Efikasnost
Kod aplikacija
Elektro-mehanički sistemi
Kontrola letjelica
Kontrola vozova
Kontrola plovnih objekata
Procesiranje signala
Prepoznavanje govora
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
11
C++ dominantan u svijetu
mikroprocesora
Moćne metode za rad sa izuzecima
Razvijene biblioteke funkcija za konkurentno
programiranje posebnih proizvođača
Rapoloživost matematskih i opšte-namjenskih
biblioteka
Raspoloživost na tržištu alata s bogatim okruženjem
Alati za prevodjenje dizajna u programski dizajn
jezika
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Hardver i softver ko-dizajn model
Čvrsta uzajamna sprega u radu između oba
projektantska tima iz razloga što se embedded
sistemi grade (realizuju) kako od specijalizovanog
hardvera, tako i specijalizovanog softvera.
Virtuelna HW/SW integracija
(co-design & co-verification)
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
12
Testiranje integracije hardwera i
softwera
Razvoj i testiranje
hardwera
Testiranje softwera
interaktivno u okiru
hosta i ciljnog sistema
Testiranje softvera
unutar ciljnog
sistema
Razvoj i testiranje
softvera u okviru
host sistema
Mikroprocesorski razvojni proces
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Neki primjeri ugrađenih sistema
u realnom vremenu
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
13
Konvencionalni solarni panel
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
Savremena mikrokontrolerska platforma
solarnog panela
Sistemi u realnom
vremenu 3
Copyright: Lejla BanjanovićMehmedović
14
:
Primjeri korištenje mikrokontrolera
u mobilnoj robotici
Copyright: Lejla BanjanovicMehmedovic
Kooperativni dizajn multi-robota
korištenjem FSM
Slika 12 – Interakcija među robotima putem
virtuelnih feromona
Slika 63 – Mašina konačnih stanja za ponašanje provjere
šesnaesterca
Copyright:
Lejlai Banjanovicprepreka
Mehmedovic
15
Robotski timovi i nanotehnologija
Multirobotski sistem –
izbjegavanje prepreka,
identifikacija robota i
komunikacija
Roboti za nadgledanje zgrada sa
komunikacionim modulima
EATR roboti koji će se u budučnosti koristiti za
nanotehnologiju
Sistemi u realnom
vremenu
Copyright: Lejla BanjanovicMehmedovic
16
Download

SRV 3 Ugradeni racunarski sistemi - Vanr.prof.dr. Lejla Banjanović