Sunteți pe pagina 1din 39

Proiectarea aplicaiilor n timp real

Introducere

Clasificare a sistemelor de calcul


Sisteme transformaionale Sisteme reactive

Sisteme interactive Sisteme de timp real

De obicei sistemele pot fi ncadrate n mai multe categorii

Sistemele transformaionale
Durata operaiilor este limitat Timpul de execuie nu este critic Rezultatele sunt independente de momentul la care sunt produse Exemple:

Programe de calcul matematic Compilatoare Programe contabile

Sisteme interactive
Sunt n dialog permanent cu unul sau mai muli utilizatori Rspund doar dac li se solicit n mod explicit Timpul de rspuns nu are influen mare asupra rspunsului Exemple:

Sisteme de proiectare asistat de calculator Programe de navigare Internet Procesoare de text, editoare, tabele de calcul

Sisteme de timp real


Sunt conectate cu un anumit proces (exterior sistemului) Trebuie s rspund ntr-un interval de timp limitat solicitrilor externe Rezultatele obinute depind de momentul la care au fost produse De obicei funcioneaz n mod continuu Exemple:

controlul roboilor controlul sistemelor de acionare electric sisteme de comunicaii

Sisteme de timp real


Trebuie s satisfac urmtoarele constrngeri:

trebuie s ofere un rezultat/rspuns ntr-un timp dat dup depirea termenelor limit, de obicei aciunile/rspunsurile nu mai sunt de nici un folos necesit predictibilitate i cunoaterea modului de aciune n timp

Caracteristicile sistemelor RT
Timpul de rspuns Procese multiple Sincronizarea componentelor Determinismul Flexibilitatea Adaptabilitatea Ireversibilitatea

Timp de rspuns
Intervalul de timp dintre momentul n care se modific una sau mai multe intrri ale sistemului i momentul n care apare rspunsul la ieirile acestuia n cazul sistemelor complexe timpul de rspuns trebuie corelat cu o anumit planificare a rspunsurilor

Procese multiple
Sistemul poate executa programe care sunt organizate sub forma mai multor procese care interacioneaz ntre ele i cu exteriorul Procesele pot fi:

periodice aperiodice cvasiperiodice

Utilizarea proceselor necesit existena unor mecanisme specifice: planificare, comunicare ntre procese, tratarea excepiilor

Sincronizarea componentelor cu timpul fizic


Activitatea subsistemelor trebuie sincronizat cu dinamica proceselor din lumea real Sistemul trebuie s prelucreze informaii care sunt disponibile doar un anumit interval de timp (n afara intervalului datele respective nu mai sunt de folos)

Determinism
Un sistem este determinist dac pentru fiecare stare i combinaie de intrri va trece ntr-o stare urmtoare unic i va furniza un set unic de valori de ieire Anticipnd comportamentul unui sistem permite planificarea resurselor i rezervarea lor n avans.

Flexibilitatea i adaptabilitatea
Are n vedere posibilitatea de dezvoltare ulterioar a subsistemelor Permite utilizarea unui sistem pentru aplicaii diferite prin realizarea unor modificri minime Permite adugarea sau dezactivarea unor funcionaliti

Ireversibilitatea
Datorit legturii cu mediul exterior, succesiunea evenimentelor dictat de acesta nu poate fi prevzut n avans Pentru sistemele complexe nu pot fi controlate toate relaiile cauzale Anumite activiti efectuate nu mai pot fi eliminate, sistemul nu mai poate reveni la starea anterioar

Alte caracteristici ale sistemelor RT


Planificarea aciunilor determinat de apariia unor evenimente Programare la nivel sczut (limbaj de asamblare) Programele strns legate de partea fizic (hardware) Funcii specializate dedicate Variabile temporare (volatile) Planificare n timpul execuiei Mediu impredictibil Sistemul proiectat s funcioneze continuu Utilizate pentru aplicaii critice

Clasificarea sistemelor RT
Sisteme RT hard Sisteme RT soft Sisteme RT ferme

Sisteme RT hard
Trebuie s rspund la evenimente, obligatoriu, n intervalele de timp impuse prin constrngeri n cazul n care nu este respectat una dintre constrngeri, sistemul i pierde funcionalitatea Costul n cazul n care nu se respect constrngerea poate fi foarte mare i poate implica viei omeneti

Exemple de sisteme RT hard


Sisteme de control al motorului autoturismelor Sisteme de control al sistemului de siguran de tip airbag Sisteme de control al traficului aerian Stimulatoare cardiace Sisteme de comand industriale

Sisteme RT soft
Trebuie s rspund la evenimente, obligatoriu, timpul de rspuns mediu trebuind s se ncadreze n intervalele de timp impuse prin constrngeri. Se accept o anumit toleran sau diferite nivele de toleran n cazul unor ntrzieri n cazul unor ntrzieri nu apare o cdere a sistemului (incapacitate de funcionare). Pot s apar costuri, acestea fiind proporionale cu mrimea ntrzierilor

Exemple de sisteme RT soft


Sisteme de distribuire a biletelor de tren Sisteme audio video pentru transmisii n direct

Sisteme RT ferme
Timpul de rspuns poate fi uneori depit dar, dup ce a fost depit, rezultatele obinute nu mai sunt de folos

Aplicaii ale sistemelor RT

Aplicaiile sistemelor de timp real


Telecomunicaii Reele de calculatoare Controlul proceselor industriale Sisteme de achiziie i msurare Sisteme ncapsulate (embedded) Aparatur de uz casnic Echipamente militare Vehicule de transport terestru i aerian Jocuri video

Concepte greite legate de sistemele RT


Sistemele RT = sisteme rapide Avansul tehnologic n hardware va rezolva problemele de timp real Nu exist o tiin a sistemelor RT Cercetarea n domeniul sistemelor RT se reduce la acordarea parametrilor de performan

Arhitecturi
Sisteme centralizate Sisteme descentralizate Sisteme distribuite Sisteme descentralizate i distribuite

Tehnici de realizare a sistemelor RT


Specificare i proiectare

Metode prin care se verific funcionarea din punct de vedere logic i se verific constrngerile de timp Folosirea modulelor gata realizate i verificarea constrngerilor de timp Folosirea diferitelor arhitecturi Utilizarea limbajelor cu primitive adecvate Utilizarea sistemelor software cu suport pentru timp real (nucleu sau sistem de operare) pentru aceste primitive

Proiectare arhitectural

Implementare

Limbajele pentru sistemele RT


Trebuie s aib urmtoarele caracteristici:

S poat manipula intrrile i ieirile sistemului S aib primitive pentru gestionarea proceselor Posibilitatea de tratare a ntreruperilor S permit definirea tipurilor de date S permit introducerea de cod n limbaj de asamblare S aib primitive pentru manipularea timpului

Consideraii la realizarea unui sistem RT


Predictibilitatea trebuie s permit determinarea n avans a:

Comportamentului cnd nu sunt respectate constrngerile de timp Comportamentul cnd ipotezele de lucru nu sunt respectate Timpul de acces i de rspuns Comportamentul n cazul informaiilor complete Cum variaz calitatea rezultatelor

Consideraii la realizarea unui sistem RT


Optimizarea sistemului

Optimizarea utilizrii procesorului Optimizarea utilizrii memoriei Calculul celui mai defavorabil caz Accesul concurent

Exemplu sistem RT
Sistem de navigaie al automobilului (tempomat)

Maneta tempomatului

Comenzile tempomatului
Apsare scurt poziia 1 sau 2, setare vitez Apsare lung poziia 1 viteza este crescut Apsare lung poziia 2 viteza este sczut Apsare scurt poziia 3 sistemul este dezactivat Apsare scurt poziia 4, viteza este crescut pn la valoarea setat

Exemplu: Sistem de navigaie al automobilului (tempomat)


Funciile sistemului

Controlul navigaiei Calibrare Mediere vitez Monitorizare consum de combustibil Monitorizare activiti de service

Funciile sistemului de navigaie

Condiii
Conductorul auto poate introduce diverse comenzi Sistemul de navigaie cuprinde 2 seturi de comenzi:

de stare: activare sistem, dezactivare sistem, revenire comanda acceleraiei: pornire, oprire motorul este pornit motorul funcioneaz ntr-o treapt superioar de vitez

Sistemul poate fi activat cnd:


Condiii
La activare se preia viteza curent i se produce semnalul de ieire necesare pentru a o menine Dezactivarea red comanda conductorului indiferent de starea n care se afl sistemul Conductorul poat s reduc viteza (apas pedala de frn) caz n care sistemul devine inactiv Cnd motorul este trecut ntr-o treapt inferioar sistemul devine inactiv

Condiii
La eliberarea pedalei de frnare i revenirea n treapta superioar dac se apas butonul de revenire, sistemul este reactivat. Se menine viteza stabilit anterior Comanda de accelerare va accelera motorul pentru a stabili o nou valoare a vitezei de croazier Comanda de oprire a accelerrii va determina preluarea noii viteze de croazier

Condiii
Sistemul va msura vitez i distana parcurs prelund impulsurile de la senzorul vitezometrului Funcia de calibrare va fi folosit pentru ajustarea msurtorilor n funcie de dimensiunea i uzura cauciucurilor Comanda de ncepere a cltoriei stabilete momentul iniial pentru msurarea distanei parcurse i a vitezei medii.

Condiii
Viteza instantanee, consumul de carburant, viteza medie, distana parcurs vor fi afiate pe afiorul sistemului Sistemul va msura distana parcurs i va informa sistemul privind necesitatea efecturii unor lucrri de service

Bibliografie
Tiberiu S. Letia, Sisteme de timp real, Editura Albastra, Cluj-Napoca, 2000 Qing Li, Carolyn Yao, Real-Time Concepts for Embedded Systems, CMP Books, 2003

S-ar putea să vă placă și